C++ 11(二)

来源:互联网 发布:cf内部刷枪软件 编辑:程序博客网 时间:2024/05/01 21:47

1.标准库函数: begin 和 end : 这两个函数不是成员函数,正确的使用形式就是把数组当作参数,begin返回指向数组的首元素的指针,end返回指向数组尾元

  素下一个位置的指针,这两个函数定义在iterator头文件中    c++11

2.左值和右值: 当一个对象当作右值的时候,那么使用的是它的内容,当一个对象当作左值的时候,那么就是利用它的内存位置。


3.处理复合表达式的时候: 1)使用括号。2)如果改变了某个运算对象的值,在表达式的其他地方不要再使用这个运算对象(除非复合表达式里面的操作有优先级之分)


4.在求商的时候,新标准规定一律向0取证(直接切除小数部分)。 c++11


5.sizeof运算符:c++11允许我们使用作用域运算符来获取类成员的大小,我们无须提供一个具体的对象,sizeof expr 这种形式返回的事表达式结果类型的大小。

   相对于另外一种形式:sizeof (type) 来说,c++11


6.case 标签 必须是整形常量表达式 (*)


7.含有可变形参的函数:如果函数的实参数量未知但是全部实参的类型都相同,我们可以使用initializer_list类型的形参,initializer_list是一种标准库类型,

       用来表示某种特定类型的值的数组。声明这种形参的函数,那么就可以直接传形如{constexpr1,constexpr2,....}到这个形参里面,

必须是constexpr,不能是可变的值,而且这个大括号里面的值就对应initializer_list这一个形参。initializer_list里面有begin,end

成员,可以用range for 来处理里面的元素。


8.***一个函数如果返回引用,那么就会得到左值,其他类型都返回右值***我们能为返回类型是非常量引用的函数的结果赋值。


9.函数还可以返回大括号包围的值的列表,这个列表也用来对表示函数返回的临时量进行初始化,如果返回类型是vector<string> 那么,return {"ac","bd","ef"}

   就相当于用 vector<string> current = {"ac","bd","ef"}。




0 0
原创粉丝点击