【发布时间】:2015-06-20 10:04:59
【问题描述】:
g++ 版本:4.9.2
jgrasp 版本:2.0.1_04
jgrasp 中使用的设置:默认
用于测试的代码:
#include <iostream>
int main(){
auto glambda = [](auto x){ return x;};
std::cout << glambda("Hello generic lambda!\n");
return 0;
}
结果:
- 使用 cygwin 终端时编译完美
-
jgrasp在编译时抛出这个错误:
jGRASP exec: g++ -g -o Test.exe Test.cpp |Test.cpp: In function 'int main()': |Test.cpp:3:9: error: 'glambda' does not name a type | auto glambda = [](auto x){ return x;}; | ^ |Test.cpp:4:50: error: 'glambda' was not declared in this scope | std::cout << glambda("Hello generic lambda!\n"); | ^
似乎没有什么不合适的。我在这里错过了什么?
【问题讨论】:
-
您是否可能缺少“-std=c++14”标志?
-
@December 如果是这样的话,我如何在 Jgrasp 中添加它?我尝试为“设置”中的命令使用自定义环境。它似乎不起作用。
标签: lambda cygwin c++14 jgrasp