Windows에서 MS C++을 사용하고 Linux에서 GCC를 사용하여 컴파일해야하는 C++ 응용 프로그램을 작성했습니다. std :: list를 반복하는 Windows에서 루프를 작성했습니다.GCC의 std :: list iterator에 "auto"키워드 사용하기
auto iter = container.GetObj()->begin();
while (iter!=container.GetObj()->end()){
(*(iter++))->Execute();
}
그것은 잘 작동하지만 GCC "자동"으로 컴파일 할 때 인식되지됩니다 :
Unexptected 토큰 (넷빈즈 IDE)에서 "자동"
그래서 나는 정의를 고정 iterator "명시 적으로 :
std::list<Container*>::iterator iter=container.GetObj()->begin();
while (iter!=container.GetObj()->end()){
(*(iter++))->Execute();
}
내 GCC 버전이
4.7.2 그것은 GCC 자동 키워드를 지원하지 않는다는 뜻입니까? 내가 컴파일러를 업그레이드 할 필요가있을 수 있습니까?
어떤 GCC 버전을 사용하고 있습니까? –
사용하는 GCC의 버전에 따라 달라집니다. – piwi
사용중인 gcc의 버전은 무엇입니까? '-std = C++ 11'로 컴파일하고 있습니까? –