私はアプリケーションを実装するためにBoostライブラリを使用します。私のアプリケーションのデータモデル内のすべての文字列文字はワイド文字(wchar_t型)です。しかし、ブーストライブラリでは、いくつかのクラスは狭いchar(char型)を渡すだけです。つまり、「address boost::asio::ip::address::from_string(const char* str)
」です。だから、私はstd :: stringとstd :: wstringの間の変換をブースト関数を呼び出すときに行う必要があります。ブーストのwstring文字列コンバータ
- 文字列の変換によるパフォーマンスの問題はありますか?
- Boostのコンバータは、std :: wstringとstd :: stringの間の変換を良好なパフォーマンスで行いますか?
UPDATE
変換機能に関する。私は以下のコードが動作することを知っています。
std::wstring wstr(L"Hello World");
const std::string nstr(wstr.begin(), wstr.end());
const std::wstring wstr2(nstr.begin(), nstr.end());
あなたのワイド文字列にASCII以外の文字が含まれていないことを願っています。 – Eugene