14-2 使用强枚举类型
/
正常情况下,decltype(e)
的cv限定符会同步e的cv限定符。但是如果e是未加括号的成员变量时,父对象表达式的cv限定符会被忽略。
[capture](params) specifiers exception ->ret { body } |
lambda表达式由下面几个部分组成:
【capture】:捕获列表,必写
【params】:参数列表,可选
【specifiers】:限定符,可选
【exception】:异常说明符,可选
【ret】:返回值类型,可选
【body】:函数体,必写
在下面的应用场景里,因为需要的模板参数是类型,因此将lambda的类型传入时,由于会创建相应的对象,而lambda表达式的默认构造函数被删除了,因此在C++20前不能使用。