2015-06-20 5 views
0

г ++ версии: версия 4.9.2C++ 14 авто лямбда не называет тип в jgrasp

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"); 
    |            ^
    

Ничто, кажется, неуместны. Что мне здесь не хватает?

+1

Возможно ли, что вам не указан флаг «-std = C++ 14»? – December

+0

@December. Если это так, как добавить его в Jgrasp? Я попытался использовать пользовательскую среду для команд в «настройках». Кажется, это не работает. – Steve

ответ

0

Извините, что тратило ваше время. Оказывается, мне нужно добавить флаг «-std = C++ 14» в разделе «C/L» параметров среды компилятора. Я буду закрывать этот вопрос.