C++11学习笔记

Author Avatar
落影汐雾 4月 01, 2022
  • 在其它设备中阅读本文章

更新于:A.D.2022.04.01


参考资料

  1. 《C++ Primer Plus》
  2. 《C++ Primer》
  3. https://zh.cppreference.com

C++11功能

新类型

long long

unsigned long long

char16_t

char32_t

原始字符串

统一的初始化

缩窄

std::initializer_list

声明

auto

decltype

返回类型后置

模板别名:using=

nullptr

智能指针

异常规范方面的修改

作用域内枚举

对类的修改

显式转换运算符

explicit

类内成员初始化

模板和STL方面的修改

基于范围的for循环

int p[5] = {1,2,3,4,5};
for(int x : p) std::cout << x << std::endl;
for(auto x : p) std::cout << x << std::endl;
//---
std::vector<int> v(10);
for(auto & x : v) x = 1;

右值引用

& 左值引用

&& 右值引用

移动语义和右值引用

新的类功能

Lambda函数

[](int x) { return x/2; }
auto div2 = [](int x) { return x/2; }
//---
[](double x) -> double{ int y = x; return x - y; }
//---
int x = 0;
[&x](int a) { x += a; }
//---
int x = 0, y = 0;
[&](int a) { x += a; y += a; }

包装器

可变参数模板

其他新功能

本文由 落影汐雾 原创,采用 保留署名-非商业性使用-禁止演绎 4.0-国际许可协议
本文链接:https://x.lyxw.xyz/2022/C++11/