Vic*_*rin 5 c++ encoding boost path
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编码)?
PS看完这篇文章链接似乎::path并::wpath没有任何区别.这样对吗?
native()对于为不同平台编译的源代码,方法似乎更合适.
从实际角度来看,这两个类有什么区别?这些方法有什么区别?
我应该为Windows应用程序使用哪些类和哪些方法?:: wpath和wstring()无处不在?
值得一提的是,对于现在的几个版本,Boost已经弃用wpath,class path应该使用它.请参阅Boost Deprecated Features(当前版本)
"引擎盖下",Boost表示path并wpath使用std::string和std::wstringwhere wstring用于表示宽字符串,即支持更大的字符集.
这些问题大部分都在这里得到解答:std :: wstring VS std :: string
方法native()似乎更适合为不同平台编译的源代码
那是正确的.如果它只是您正在开发的Windows应用程序,那么wstring()可以使用它native()