2014-11-03 5 views
1

문제가 있습니다. 이것은 boost :: filesystem과 관련이있다. 이 오류가 발생합니다 : error: ‘class boost::filesystem::directory_entry’ has no member named ‘filename’. 그들은 그것을 비난 했나요? 코드는 다음과 같습니다. string FileName = i->filename();부스트 1.56.0 컴파일 문제

+0

아니 그것을 참조 할, 그것은 http://www.boost.org/doc/libs/1_56_0/libs/filesystem/doc/ ([가]입니다 reference.html # path-filename). – m0nhawk

답변

1

filename()directory_entry이 아닌 path의 구성원입니다.

그냥

std::string FileName = i->path().filename(); 

Live On Coliru

+0

이후 부스트 버전이 path()로 이동 되었습니까? :) – Duosora

+0

@Duosora ** [도서관 홈페이지] (http://www.boost.org/doc/libs/release/libs/filesystem) **에는 "이것은 파일 시스템 라이브러리의 버전 3입니다. 버전 2는 더 이상 지원되지 않습니다. 1.49.0은 버전 2 "_을 제공하는 Boost의 마지막 릴리스였습니다. 나는 그 대답을 가정한다. – sehe

+0

그렇다. 나는 대체물을 대량 주입했는데, 그것은 아주 잘 컴파일되었다. 설명에 많은 감사드립니다. 그것에주의를 기울이지 않아서 나를 용서해주십시오. – Duosora