Có một cách đơn giản để có được tên ứng dụng sử dụng Boost (có thể với boost::program_options
?)Boost Options - Nhận tên ứng dụng
Điều sẽ như thế này:
Có argv[0] = "c:\foo\bar\appname.exe"
Tôi muốn để có var1 = "appname"
Có một cách đơn giản để có được tên ứng dụng sử dụng Boost (có thể với boost::program_options
?)Boost Options - Nhận tên ứng dụng
Điều sẽ như thế này:
Có argv[0] = "c:\foo\bar\appname.exe"
Tôi muốn để có var1 = "appname"
Bạn có thể sử dụng boost :: filesystem để trích xuất tên từ đường dẫn. trông giống như sau:
#include <boost/filesystem.hpp>
boost::filesystem::path p = argv[0];
std::string var1 = p.stem().string();
Đó chính xác là những gì tôi đang tìm kiếm. Cảm ơn Tobias! –
Vâng, có 'basename (3)', mặc dù đó không phải là rất Boosty. – zmccord
Nếu bạn thực sự muốn được ưa thích, bạn có thể sử dụng 'boost.regex' để phân tích cú pháp đường dẫn. – Linuxios