2010-07-02 3 views
4

GCC 4.1은 <tr1/memory> 헤더를 사용하고 GCC 4.3은 <memory> 헤더를 사용하므로 shared_ptr과 GCC 4.3.2를 사용하는 휴대용 방법이 필요하며 GCC 4.2.1과 함께 할 수있는 방법이 있습니다. GCC 버전 매크로를 확인하거나 Boost와 같은 외부 라이브러리를 사용하지 않고?GCC에서 shared_ptr을 사용할 수있는 휴대용 방법

+0

에 TR1을 추가 할 수 있습니다 - http://stackoverflow.com/questions/716904/for-the-next-c-standard –

+0

답해 주셔서 감사합니다. – Tarantula

답변

7

<tr1/memory>은 여전히 ​​gcc 4.3에서 작동합니다. 두 버전을 모두 지원하려면 tr1 이름을 사용하십시오.

+0

그 tr1 물건들이 어딘가에 제거 될 의도가 아니 었나요? 나는 그것이 표준이 정말로 승인 될 때까지 그것이 임시적인 것이라고 생각했다. – jdehaan

+0

@jedhaan - 저는'tr1'이 뭔가를 표준으로 만들었지 만 하위 호환성을 위해'tr1' include 파일과 네임 스페이스에서 여전히 사용할 수 있다고 생각했습니다. –

1

이 솔루션을 시도하지 않은,하지만 당신은 GCC 명령 행에서 디렉토리를 포함 목록 (-I 또는 -isystem)

어쩌면 관련
관련 문제