C++11 新用法】的更多相关文章

基于哈希的 map 和 set 简述 基于哈希的 map 和 set ,它们分别叫做 unordered_map, unordered_set .数据分布越平均,性能相较 map 和 set 来说提升就更大.但由于它们基于哈希,所以并不像 map 和 set 一样能自动排序:它们都是无序的. 我做了一个测试:随机生成 \(10^7\) 个 int 范围内的整数(平均分布),然后将其分别插入 map 和 unordered_map,再完整的做一次查询,查看时间和内存上的消耗. 测试代码 #incl…
相关资料:https://legacy.gitbook.com/book/changkun/cpp1x-tutorial/details C++11之for循环的新用法 C++使用如下方法遍历一个容器: #include "stdafx.h" #include<iostream> #include<vector> int main() { std::vector<int> arr; arr.push_back(); arr.push_back();…
一.for循环新用法——基于范围的for循环 for(元素类型 元素对象 : 容器对象) { //遍历 } 1)遍历字符串 std::string str = "hello world"; for(auto ch : str) { std::cout << ch << std::endl; } 2)遍历数组 int arr[] = {1,2,3,4,5}; for(auto i : arr) { std::cout << i << std…
因为偶然的机会,在图书馆看到<深入理解C++ 11:C++11新特性解析和应用>这本书,大致扫下,受益匪浅,就果断借出来,对于其中的部分内容进行详读并亲自编程测试相关代码,也就有了整理写出这篇读书笔记的基础.C++作为踏入编程的最初语言,一直充满感情,而C++11作为新标准虽然推出一段时间了,却因为总总原因直到现在才去开始真正了解,不过一句话回荡在脑中:当你认为为时已晚的时候,恰恰是最早的时候!从C++98到C++11, C++11标准经历了10几年的沉淀,以全新的姿态迎接新的挑战,长话短说,…
C++11标准发布已有一段时间了, 维基百科上有对C++11新标准的变化和C++11新特性介绍的文章. 我是一名C++程序员,非常想了解一下C++11. 英文版的维基百科看起来非常费劲,而中文版维基百科不是知道是台湾还是香港人翻译的然后由工具转换成简体中文的,有些术语和语言习惯和大陆程序不一样! 我决定结合这两个版本按照我自己的习惯把这篇文章整理到我的博客中.分享给关注我和关注C++11的朋友们. 当然了, 本人水平有限,英语水平也很一般,就把这个过程当做学习C++11的过程吧.文章中肯定会有很…
:first-child { margin-top: 0px; } .markdown-preview:not([data-use-github-style]) h1, .markdown-preview:not([data-use-github-style]) h2, .markdown-preview:not([data-use-github-style]) h3, .markdown-preview:not([data-use-github-style]) h4, .markdown-pr…
C++11新特性总结可以参考:http://www.cnblogs.com/pzhfei/archive/2013/03/02/CPP_new_feature.html#section_6.8 C++的Lambda表达式在WIN RT的异步编程中,占有非常重要的作用.但C++的Lambda表达式又不同于其他语言,比如C#,javascript.本篇旨在讨论C++ Lambda表达式的基本语法和概念,希望大家多多指正. 首先,我们看一下Lambda表达式的基本构成: 1. 是捕获值列表,2.是传入…
一.nullptr的意义 1.NULL在C中的定义 #define NULL (void*)0 2.NULL在C++中的定义 #ifndef NULL #ifdef __cplusplus #define NULL 0 #else #define NULL ((void *)0) #endif #endif 3.为什么C++和C中NULL定义不一样呢? void foo(int a) { cout<<"This is int"<<endl; } void foo…
一.decltype意义 有时我们希望从表达式的类型推断出要定义的变量类型,但是不想用该表达式的值初始化变量(如果要初始化就用auto了).为了满足这一需求,C++11新标准引入了decltype类型说明符,它的作用是选择并返回操作数的数据类型,在此过程中,编译器分析表达式并得到它的类型,却不实际计算表达式的值. 二.decltype用法 1.基本用法 int getSize(); int main(void) { ; /*1.dclTempA为int*/ decltype(tempA) dcl…
一.auto意义 编程时常常需要把表达式的值赋给变量,这就要求在声明变量的时候清楚地知道表达式的类型,然后要做到这一点并非那么容易.为了解决这个问题,C++11新标准引入了auto类型说明符,用它就能让编译器替我们去分析表达式所属的类型. 二.auto用法 1.基本用法 ; ; /*1.正常推断auto为int,编译通过*/ auto autoTempA = tempA + tempB; /*2.正常推断auto为int,编译通过*/ auto autoTempB = , *autoTempC…