
按照C++11新特性主线完善我的渣c++储备
code_hrbeu
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
long long ,列表初始化
1.long long类型 64位8字节2.列表初始化,作为c++11新标准的一部分,用{}(花括号)来初始化变量得到了全面的应用。现在,无论是初始化对象还是某些时候为对象赋新值(用于赋值?没查,不确定),都可以使用这样一组由花括号括起来的初始值。int a=0;int a={0};int a(0);int a{0};vector v1{"a","an","the"};vector原创 2016-06-11 17:52:48 · 2763 阅读 · 0 评论 -
类型别名 和 decltype
有两种方法可以用于定义类型别名。传统的方法是使用关键字typedef,例如typedef double dou;//dou是double的别名typedef dou *p;//p是double * 的别名c++11定义了另外一种方法,使用原创 2016-06-27 10:14:49 · 280 阅读 · 0 评论 -
nullptr,constexpr和constexpr函数
生成空指针的方法有int *p1=nullptr; //c++11新标准,推荐使用int *p2=0; // 注意不能把一个变量赋值给指针,即使变量的值为0也不行。int *p3=NULL;// NULL是预处理变量,需要包含一个头文件。根据尽量用编译器代替预处理器的原则,应该避免使用这种方法。首先明确一下常量表达式的定义(const expression原创 2016-06-24 15:45:20 · 885 阅读 · 0 评论 -
类内初始化,范围for语句,vector的vector,容器的cbegin和cend
类内初始化在c++11新标准里,我们可以为类的数据成员提供一个类内初始值。这就是所谓的in—class。当创建对象时,用类初始化值初始化对应的数据成员。需要注意的是,规定不能用()对类内数据成员初始化。范围for语句for(declaration:expression)statementvector的vector以前:vector > a// 必须有空原创 2016-07-20 09:59:06 · 601 阅读 · 0 评论 -
标准库begin和end;除法的舍入规则;sizeof用于类成员;
标准库的begin和end这两个标准库函数可以用来获得数组的头指针和尾后指针。除法的舍入规则c++11规定除法都是向0取整。(即直接删除小数部分)sizeof用于类成员sizeof有两种形式sizeof(type)sizeof expr例如:double a=10.0;sizeof(double);sizeof a;通常情况下只原创 2016-07-21 09:43:02 · 330 阅读 · 0 评论 -
auto类型说明符
当我们不知道某个表达式的值的类型,但是需要用一个变量来存储这个值得时候,就用到auto类型说明符。auto让编译器通过初始化的值来推算变量的类型。所以用auto定义变量时必须有初始值。例如 auto a =10;//定义了一个整形变量aauto的使用有以下需要注意的点:当常量作为初始值的时候,auto一般忽略掉const(顶层const)。例如:const int a原创 2016-06-24 15:08:23 · 546 阅读 · 0 评论 -
标准库initializer_list类
initialize :初始化和vector一样,initializer_list也是一种模板类型。但和vector不同的是initializer_list对象中的元素永远是const。具体的操作includeinitializer_list lst 定义一个initializer_list,进行默认初始化initializer_list lst{a,b,c}原创 2016-08-12 16:33:32 · 955 阅读 · 0 评论 -
列表初始化返回值,函数的尾置返回类型
c++11规定,函数可以返回花括号包围值的列表例如:vector process(){return{"a","b","c"};}c++11规定了一种新的函数定义申明的方式(trailing retern type)trail:有尾部的意思例如auto func(int i)->int(*)[10]原创 2016-08-12 16:51:56 · 796 阅读 · 0 评论