我目前正在使用 CodeBlocks,但出于某种原因,它一直给我这个奇怪的错误:
错误:“decltype”之前需要类型说明符
我尝试了各种不同的源代码,但它总是给我这个错误,我什至从我的指南中复制并粘贴了一个,但出现了同样的消息。
例如这不起作用:
template<class T, class U>
auto add(T t, U u) -> decltype(t + u) // this is where the error occurs...
{
return t + u;
}
最佳答案
您的编译器不支持 C++11,或者未启用该支持,您需要添加一些编译器选项。您还没有告诉 use 您正在使用哪个编译器版本,所以我不能说这两种可能性中的哪一种是这种情况。
使用 GCC 或 Clang,您可以通过 -std=c++11
启用 C++11,或者对于较旧的 GCC 版本,-std=c++0x
.
关于c++ - 在 C++ 中使用 auto 作为我的函数的返回值在 CodeBlocks 中不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27700381/