boost::filesystem::path vs boost::filesystem::wpath
boost::filesystem::path vs boost::filesystem::wpath
Boost lib 有一个类来处理文件路径:boost::filesystem::path
。Boos也有这个类boost::filesystem::wpath
每个类都有方法string()
、wstring()
、c_str()
、native()
开发Windows应用程序,但我完全不明白我应该使用什么))
从实践的角度来看,这两个类有什么区别?这些方法有什么区别?
我应该对 Windows 应用使用什么类和什么方法? 到处都是::wpath
和wstring()
?
部分源代码(几个静态链接的库)将为 Ubuntu 编译。在这种情况下,::wpath
还好吗?
我也使用SQLite
,它需要数据库文件的路径。 sqlite3_open。
我应该使用sqlite3_open_v2
(文件路径的 UTF-8 编码)还是sqlite3_open16
(文件路径的 UTF-16 编码)?
附言阅读本文链接后,::path
和::wpath
似乎根本没有区别。对吗?
对于为不同平台编译的源代码,方法 native()
似乎更可取。
从实践的角度来看,这两个类有什么区别?这些方法有什么区别?
我应该为Windows应用程序使用什么类和什么方法?::wpath和wstring()无处不在?
值得一提的是,对于现在的几个版本,Boost 已弃用wpath
,应该改用class path
。请参阅增强已弃用的功能(当前版本)
"引擎盖下",Boost 使用 std::string
和 std::wstring
表示path
和wpath
,其中 wstring
用于表示宽字符串,即支持更大的字符集。
这些问题大部分都在这里得到解答: std::wstring VS std::string
对于为不同平台编译的源代码,方法 native() 似乎更可取
这是正确的。如果它只是你正在开发的 Windows 应用,那么wstring()
可以使用native()
- 传递 boost::filesystem::p ath 到 boost::p rocess::child 会导致 Win
- 这是 boost::filesystem 中的错误吗?为什么 boost::filesystem::p ath::str
- 使用boost::filesystem和boost::lexical_cast从文件名中提取数字
- std::string references、std::regex和boost::filesystem的基本概念
- 在macOS High Sierra上使用Boost.Filesystem编译时的链接器错误
- boost :: filesystem :: space()报告错误的磁盘空间
- boost :: filesystem :: verver()无法访问文件,因为另一个过程正在使用该文件
- 使用 boost::filesystem 迭代目录时可以更改文件的顺序吗?
- Boost Filesystem flowly_caronical不会在没有父文件夹的情况下解决相对路径
- 如何处理boost :: fileSystem ::路径的空间
- 在Windows 10中的Boost :: FileSystem :: remove_all遇到问题
- 如何替换从 boost::filesystem::weakly_relative 和 std::filesystem::
- boost::filesystem::recursive_directory_iterator 在 C:Users
- 错误:无法通过'...'传递非平凡可复制类型的对象'class boost::filesystem::path'
- boost::filesystem::path.parent_path() and whitespace
- 如何使用 boost::filesystem 检查路径是否是可创建的文件
- /usr/include/boost/filesystem/path.hpp:307:未定义对'boost::files
- iostream GCC错误,转换为boost::filesystem::iostream for Windows
- 如何与CMAKE一起使用VS 2017编译的Boost Filesystem库
- boost/filesystem.hpp未通过Homebrew安装的OSX Boost链接