default_random_engine 및 uniform_real_distribution을 임의의 머리글로 사용하여 임의의 이중 숫자를 생성하려고합니다.'std :: default_random_engine'유형을 확인할 수 없음
C/C++ & MinGW 용 Eclipse를 사용하여 프로젝트를 빌드합니다.
- 이클립스 버전 : 4.2.1
- 이클립스 CDT C/C++ 개발 도구 버전 : 8.1.1.201209170703
- 이클립스 CDT GCC 크로스 컴파일러 지원 버전 : 1.1.0.201209170703
- 는 MinGW 버전 : 4.6.2 ("gcc -v"를 사용하여 확인)
편집기에 std :: default_random_engine을 입력하면 "Type 'std :: default_random_engine'을 (를) 확인할 수 없음을 묻는 메시지가 나타납니다.
이미 C++ 11 기능
- Open Project Properties->C/C++ Build ->Settings->Tool Settings->GCC C++ Compiler->Miscellaneous->Other Flags. Put "-std=c++0x" at the end
- Project Properties->C/C++ General->Preprocessor Include Paths, Macros->[Providers] tab->your Built-in Compiler Settings provider (toolchain dependent). Click on "Workspace Settings" link which gets you to "Settings" property page, select [Discovery] tab and your provider again. There is "Command to get compiler specs", add "-std=c++0x" in there.
나는 목록 초기화 벡터 쓰고의 지원을 테스트 할 수있는 범위를 지원하기 위해 내 프로젝트를 구성한 C++ 11, 코드가 잘 작동합니다.
vector<int> ivec = {1, 2, 3};
for (int i : ivec)
cout << i << " ";
cout << endl;
"std :: default_random_engine"의 문제점은 무엇입니까?
당신의 컴파일러와 함께 제공 된 libstdC++의 새로운 지원하지 않을 가능성이 있습니다 표준 라이브러리 기능을 제공하지만 컴파일러가 최신 언어 기능을 지원합니다. –
시도하십시오 :: tr1 :: default_random_engine –
당신 _do_ 포함''? 또한, Eclipse가 그것을 인식하지 못한다고해도 어쨌든 올바르게 빌드됩니까? –