부스트는 부스트 _ 파일 시스템을 사용할 때 파일 이름에 따옴표를 계속 추가합니다.boost :: filesystem 인용 부호를 추가 하시겠습니까?
foo.cpp의 : 컴파일 된
#include <iostream>
#include <boost/filesystem.hpp>
int main(int argc, char * argv[])
{
std::cout << argv[0] << std::endl;
boost::filesystem::path p(argv[0]);
std::cout << p << std::endl;
std::cout << p.filename() << std::endl;
return 0;
}
:
g++ foo.cpp -o foo -lboost_filesystem -lboost_system
출력 :
./foo
"./foo"
"foo"
이 내 경우에는 다소 예상치 못한 불편하다. 이것은 정말로 의도적 인 것인가, 아니면 다소 오래된 버전의 Boost (1.46.1) 버그입니다. 추가하지 않도록 할 수있는 방법이 있습니까?
설명서를 살펴 보았지만 이 아닌은 예제 출력에 따옴표가 표시되어 있지만 나는 깨달았습니다.
글쎄, 나는 잘 따옴표 나 자신을 추가 할 수 있습니다 공백 무서워합니다. 로그 아웃풋에서 파일 이름을 사용할 수 있기 전에 그들을 제거하는 것은 귀찮은 일입니다 - 그리고 replace_all()은 실제로 도움이되지 않습니다. 왜냐하면 두뇌가 망가 졌기 때문에 내장 된 따옴표가있을 수 있기 때문입니다 * 또한 파일 이름에. ;-) – DevSolar
괜찮 았지만 버그 리포트에서 제안한 것을 할 수 있습니다 : std :: cout << p.filename(). string() << std :: endl; –
내가 상향 투표하거나 대답하기 전에 작성, 테스트 및 커밋. ;-) – DevSolar