2009-05-29 6 views
6

사용되지 않는, 내가 포함 할 때 나는이 컴파일러 경고를 얻을 : ".이 헤더가 사용되지 않습니다 사용하십시오 : 부스트/정신// classic_core.hpp 포함"나는해야 이거 걱정 되니?부스트 정신 헤더 내가 정신 :: 향상을위한 빠른 시작 가이드 다음입니다

(퀵 스타트 가이드 : http://spirit.sourceforge.net/distrib/spirit_1_8_5/libs/spirit/doc/quick_start.html, 내가 여기에 컴파일하려고 프로그램의 전체 소스와 : http://spirit.sourceforge.net/distrib/spirit_1_8_5/libs/spirit/example/fundamental/number_list.cpp)

편집 : 또한, 나는 추천 classic_core.hpp 및 classic_push_back_actor.hpp 헤더를 컴파일 할 때 , 다음과 같은 컴파일러 오류가 발생합니다.

test7.cpp: In function 'bool parse_numbers(const char*, __gnu_debug_def::vector<double, std::allocator<double> >&)': 
test7.cpp:18: error: 'real_p' was not declared in this scope 
test7.cpp:18: error: 'push_back_a' was not declared in this scope 
test7.cpp:23: error: 'space_p' was not declared in this scope 
test7.cpp:23: error: 'parse' was not declared in this scope 
+0

부스트 버전? –

+0

당신은 그것을 맞습니다 - 부스트 1.39 –

답변

11

[편집 :] 원래의 대답은 심하게 유효 기간이; 특히 링크가 끊어졌습니다. Boost의 현재 버전 (2012-02-24 이후)은 1.49.0입니다.

한 경고가 중단 헤더 인 #include <boost/spirit.hpp>의 결과이고; 그러나 웹상의 예는이 형식을 사용합니다. 시작하려면 boost tutorials을 사용해보세요. 올바른 포함 및 네임 스페이스를 확인하면 대부분의 예를 쉽게 변환 할 수 있습니다.

[OLD 답변 :]

당신은 (SVN을 통해) 나중에 부스트 1.39 이상을 사용해야합니다. 이 프레젠테이션이 도움이 될 것입니다

공식 출시는 1.40이므로 문서가 업데이트 될 때까지는 아마 업데이트 될 것입니다.

편집 : the doc in the boost SVN repository이 근무하고 아마 더 충실한 방식으로 새로운 아키텍처를 반영하고있다.

당신이 파서 부스트 :: 정신 :: 고전 네임 스페이스에있는 고전적인 헤더를 포함하고
0

라이브러리가 클래스/헤더/메소드/라이브러리의 유지 관리자가 기능 유지 보수를 중단하고 나중에 제거 할 수 있음을 의미합니다. 나중에 제안 된 헤더로 전환하는 것이 좋습니다. 나중에 앞으로 두통을 피하십시오.

새로운 헤더는 기능을 처리하는 약간 다른 방법이있을 수 있습니다, 그래서 당신은 몇 가지 코드를 변경해야 할 수도 있습니다.

(I 부스트에 대해 잘 모르는,이 그냥 일반적인 의견입니다)

1

. 시도 :

네임 스페이스 부스트를 사용하여 : 정신을 :: 고전;

관련 문제