C++11 新特性——强类型枚举
强类型枚举 C++ 有一个奇怪的设定,有名字的 enum 类型的名字和 enum 成员的名字都是全局可见的。比如下面这种情况,就会导致编译错误。 enum Type { General, Light, Medium, Heavy }; enum Category { General, Pistol, MachineGun, Cannon }; // 无法通过编译 如果能够提示错误, […]
强类型枚举 C++ 有一个奇怪的设定,有名字的 enum 类型的名字和 enum 成员的名字都是全局可见的。比如下面这种情况,就会导致编译错误。 enum Type { General, Light, Medium, Heavy }; enum Category { General, Pistol, MachineGun, Cannon }; // 无法通过编译 如果能够提示错误, […]
写在前面 C++ 是有四个相关语言组成的联邦——C、object-C、template C++、STL。如果需要将这些东西全部杂糅到一起,总会出现一些抵触的情况,C++ 的编码也会变得更复杂。新标准增加了许多新特性,使得 C++ 更加易用。这些新特性是紧密相连,互为基础的。 在C++11中,规范提供了多种类型推导的机制,使得我们写出来的代码更精简、更灵活。 这个新的类型推导机制 […]