-
现代C++20
类型
std::optional
std::variant
nullptr_t
decltype
auto
值和引用不同
- 左值,右值,将亡值都是值
- 左值引用,右值引用,转发引用(模板中的 T&&) 都是引用,是可以取地址,std::move()来变成右值
- 引用折叠:右值引用 + 右值引用 = 右值引用。其他情况都变成左值引用
- 完美转发:: std::forward。T &&转发std::forward后能保持T 折叠前cv属性和左右值引用
类型推导
- auto, auto &&, decltype(x), decltype((x)), decltype(auto), decval()
- 添加推导规则:template pair(T, U) -> Pair;
运行时多态:
- 1.虚函数多态(subtype),扩展新类型方便,添加新方法要修改所有子类
- 2.ad-hoc多态:std::variant + std::visit, 扩展新类型不方便,要修改所有实现,扩展新方法方便。
函数对象,lambda函数
- std::bind.
- std::copy_if(nums.begin(), nums.end(), std::ostream_iterator(std::cout, ", "), [](int x){ retur x > 4});
- std::function
-
相关阅读:
松霖转债上市价格预测(昨天的)
十四天学会C++之第三天(数组和字符串)
idea 一直卡在maven正在解析maven依赖
FastAdmin 列表多选后批量操作数据
稻草熊娱乐股价再创新低:年内累计跌幅达80%,赵丽颖曾是其股东
『C语言进阶』指针进阶(二)
C/C++晶晶赴约会 2020年12月电子学会青少年软件编程(C/C++)等级考试一级真题答案解析
【香橙派4B】6、测试串口
索引的数据结构、索引及其优缺点、索引的声明与使用以及索引的设计原则
Layui快速入门之第八节 表格渲染与属性的使用
-
原文地址:https://blog.csdn.net/wyg_031113/article/details/128190228