decltype是 GCC 实现的第一个 C++ 11 新特性(在C++程序设计语言中,decltype作为操作符,用于获取表达式的数据类型。C++11标准引入decltype,主要是为泛型编程而设计,以解决泛型编程中有些类型由模板参数决定而难以(甚至不可能)表示的问题)。它实际上起源于一个相当古老的 GNU 扩展关键字——__typeof__。这个非标准关键字也能够在 C 语言中使用,GNU Compiler Collection 的专业用户可能对它更熟悉一些。2008 年,GCC 4.3.x 就实现了这个特性,同时去除了__typeof__的一些缺点。现在,decltype和__decltype两个关键字在 GCC 中都适用;前者只能用在 C++ 11 模式下,后者可以同时应用于 C++ 11 和 C++ 98 模式。__typeof__则已经停止使用。 decltype是 GCC 实现的第一个 C++ 11 新特性(在C++程序设计语言中