[英]wstring string converter in Boost
我使用Boost庫來實現我的應用程序。 我的應用程序的數據模型中的所有字符串字符都是寬字符(wchar_t類型)。 但是在boost庫中,一些類只處理窄char(char類型),即“ address boost::asio::ip::address::from_string(const char* str)
”。 所以我需要在調用boost函數時在std :: string和std :: wstring之間進行轉換。
UPDATE
關於轉換器功能。 我發現下面的代碼有效。
std::wstring wstr(L"Hello World");
const std::string nstr( wstr.begin(), wstr.end());
const std::wstring wstr2(nstr.begin(), nstr.end());
自己添加研究結論。
關於字符串轉換的性能開銷。 我調試了上面的函數。 轉換由C的C-cast char實現。 時間復雜度為O(L),L是字符串的長度。 在我的應用程序中,需要轉換的字符串不是很長。 所以我認為由於轉換而沒有明顯的性能延遲。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.