for ( decl : coll ) {
statements;
}
// collaborate
常用于正则表达式(regular expression)
R"(\\n)"
// 相当于
R"\\\\n"
当你想在字符串中写出一个右括号“)”,则使用定义符(delimiter) 换而言之,如果你想在字符串中添加括号,使用定义符。
R"NC(any stuff NC())NC"
// Equals
"any stuff NC()"
L"" // wide string literal "wchar_t"
U"" // string literal char32_t
u"" // string literal char16_t
u8"" // UTF-8 const char
16章介绍如何使用不同的编码(encoding)完成国际化(internationalization)
异常是一个尚未能理解的大话题,另起一篇文章详细讨论异常。
模版是一个尚未能理解的大话题,另起一篇文章详细讨论模版。
同上
decltype(declared type)
是一个可以让编译器找出表达式类型的关键字。
std::map<std::string, float> coll;
decltype(coll)::value_type elem;
应用之一是声明返回类型,另一个用途是metaprogramming(超编程;元编程)或是用来传输一个lambda类型。
template<typename T1, typename T2>
auto add(T1 x, T2 y) -> decltype(x+y)
// Equals Pseudocode decltype(x+y) add(T1 x, T2 y)
这种写法和“为lambda声明返回类型”是一样的。
又称strong enumeration或enumeration class,这是enumeration value(或称为enumerator)的一个较干净的实现。
enum class Salutation : char { mr, ms, co, none };
好处: 1、绝不会隐式自、至int 2、如果数值不再enumeration被声明的作用域内,你必须改写为salutation::mr 3、通过定义一个底层类型来确保每一个值的大小。 4、有提前声明(forward declaration)可供使用,以避免新的值而重新编译。
type trait std::underlying_type 你可以核定(evaluate)一个枚举类型。
error condition value也是一个scoped enumerator???
原文:https://www.cnblogs.com/PROJECT-IDOLPROGRAM/p/9251720.html