C++11标准中关于auto与decltype的具体区别? auto 通过变量的初始值来推断变量的类型 decltype 用于从表达式的类型推断出要定义的变量的类型 std::string func() { return "hello"; } int main() { decltype(func()) s; s = "hh"; } 注意:decltype()括号中的表达式并不去执行 当然也可以 int i = 5; decltype(i) a = 9; 另外,decltype((variable))的结果永远是引用;decltype(variable)结果只有当variable本身是一个引用是才是引用 支持C++11新标准的编译器有哪些? 目前支持全部c++11特性的编译器还没有,但是大部分编译器已经对c++11的支持基本足够了,每个新版本都会对c++11特性进行新的支持,所以编译器用最新的基本不会有问题了 具体的支持情况见下面的链接主流编译器支持情况
C++11标准中关于auto与decltype的具体区别?
auto
通过变量的初始值来推断变量的类型
decltype
用于从表达式的类型推断出要定义的变量的类型
注意:decltype()括号中的表达式并不去执行
当然也可以
另外,
decltype((variable))
的结果永远是引用;decltype(variable)
结果只有当variable
本身是一个引用是才是引用支持C++11新标准的编译器有哪些?
目前支持全部c++11特性的编译器还没有,但是大部分编译器已经对c++11的支持基本足够了,每个新版本都会对c++11特性进行新的支持,所以编译器用最新的基本不会有问题了
具体的支持情况见下面的链接主流编译器支持情况