有了extern后编译器会自动删除重复的实例化模板, 不但节省内存还节省了多余的实例化时间
注意被其他文件调用的外部模板一定要在要用到的类实例化之前实例化
局部和匿名成员可以作为模板实参了, 但仍要注意匿名类型的声明不能在参数位置...memset和memcpy来对POD操作, 方便C/C++混编
而且POD保证了静态初始化的安全有效, 可直接在内存级别赋0
我们可以用标准库的is_trivial::value来判断一个类是否Plain...这个特性在C++20中被concept以更好的语法取代
4 新手易学, 老兵易用
auto
auto是静态类型推导, 必须被初始化
auto本质上是一个类型占位符, 在编译的时候推导出类型然后以类似字面替换的方式进行使用...auto和cv限制符(cv-qualifier, 指const和volatile)一起使用时, auto无法带走变量的cv限制, 因此需要我们额外写清楚对应的限制
auto可以用来在一个表达式中声明多个变量..., 需要泛型的时候还是应该用模板处理
auto禁止对结构体中的非静态成员进行推导
不允许声明auto数组
新增的range-for语法要求目标有begin和end函数, 且支持++和==, 常与auto