拡張文字列クラスを更新しました。(マルチ文字列リテラル関連、他)
http://tricklib.com/cxx/dagger/xstring.h
更新内容は以下の通りです。
- ただの npos だと mwcc2.4 でエラー になる箇所を base_type::npos に修正。
- TX_string_literal_holder の蛇足な std::basic_string
と std::basic_string への変換 operator() を除去。 - マルチ文字列リテラル関連の比較演算子及び operator + () の実装。
- マルチ文字列リテラルでnul文字を含む文字列リテラルの対応。
- wxstring を disabled にしている場合でも _TX を使えるように修正。
..."マルチ文字列リテラルでnul文字を含む文字列リテラルの対応"により...
tricklib::xstring test_string(_TX("test\x0\x0"));
...といった形でnul文字を含む文字列リテラルを簡潔に拡張文字列リテラルに渡せますし...
tricklib::xstring test_string(_TX("test\x0\x0")); if (_TX("test\x0\x0") == test_string) ...
...といった判定も正しく処理されます。