답변
람다, 예 :
// C++0x only.
std::for_each(theContainer.begin(), theContainer.end(), [](someType x) {
// do stuff with x.
});
range-based for loop은 4.6 이후 GCC에서 지원됩니다.
// C++0x only
for (auto x : theContainer) {
// do stuff with x.
}
"for each" loop 구문은 MSVC 확장입니다. 다른 컴파일러에서는 사용할 수 없습니다.
// MSVC only
for each (auto x in theContainer) {
// do stuff with x.
}
하지만 Boost.Foreach 만 사용할 수 있습니다. C++ 0x도없이 이식 가능합니다.
// Requires Boost
BOOST_FOREACH(someType x, theContainer) {
// do stuff with x.
}
는 GCC 버전을 얻는 방법에 How do I test the current version of GCC ?를 참조하십시오.
아니요, (C++ 0x 형식) VC++ 2010과 같은 : 각 (vec 자동) { cout << it << endl; } – user335870
@user :'for each'는 C++ 0x가 아닙니다. – kennytm
'for each' C++ cli입니까? 아니면 원시 C++을 확장 한 것입니까? –
또한 C++ 0X 람다를 사용하지 않는 전통적 방식이 있습니다. <algorithm>
헤더는 정의 된 연산자 괄호가있는 개체와 함께 사용하도록 설계되었습니다. (C++ 0X 람다 단지 운전자가 물체의 서브 세트이다())
struct Functor
{
void operator()(MyType& object)
{
// what you want to do on objects
}
}
void Foo(std::vector<MyType>& vector)
{
Functor functor;
std::for_each(vector.begin(), vector.end(), functor);
}
는 모든 C++에서 펑하고 람다 작업 표준 기능 algorithm header reference 참조.
- 1. GCC 버전 찾기
- 2. 성능 비교 - gcc 및 llvm-gcc
- 3. gcc 버전 4.12와의 is_pointer 에뮬레이션
- 4. GCC 함수의 Visual C++ 버전
- 5. gcc 및 재진입 코드
- 6. /tmp 폴더 및 gcc
- 7. Qt Creator 및 GCC
- 8. 복사 및 GCC
- 9. gcc -nostdlib 및 mudflap
- 10. Gcc 및 ld 인수
- 11. GCC 플러그인 아키텍처 및 GPL
- 12. gcc 버전 4.1.2 (Mac OS X
- 13. gcc - 2 버전, 인라인 함수의 다른 처리
- 14. 은 gcc-4와 호환되는 gcc-3 바이너리입니다.
- 15. gcc/최적화 플래그의 지속성 변경 gcc/C
- 16. GCC 성능
- 17. 는 GCC
- 18. GCC 템플릿은
- 19. GCC, 유니 코드 및 __FUNCTION__
- 20. Gcc 컴파일러 명령 및 옵션
- 21. C++ - gcc 관련 경고
- 22. 업데이트 Apple g ++/gcc
- 23. gcc 빌드 시간 개선
- 24. GCC STL 바운드 검사
- 25. gcc crtbegin crtend
- 26. GCC 다중 최적화 플래그
- 27. GCC 디버그 정보
- 28. gcc 템플릿 상속 문제
- 29. gcc 라이브러리 혼동
- 30. GCC 타겟 특이성 및 이진 호환성
두 질문 사이에 어떤 관계도 보이지 않습니다 ... – kennytm
'g ++'또는'gcc'를 의미합니까? – alternative