Wikipediaから必要リテラルU8列である:はC++ 11
C++コンパイラでのUnicodeのサポートを向上させる目的で、char型の定義は、少なくともサイズであるように改変されていますUTF-8の8ビット符号化を格納するために必要である。
私はポータブルアプリケーションを作成するためにこれが何を意味するのだろうかと思います。これを書くことに違いがありますか?
const char[] str = "Test String";
またはこれは何ですか?
const char[] str = u8"Test String";
コード内のすべての文字列リテラルに後者を使用しない理由はありますか?
TestStringの中に非ASCII文字があるとどうなりますか?
http://stackoverflow.com/questions/9739070/char-encodingは、文字列の便利 – Yakk
一つはUTF-8であることがあり、他の一つはEBCDICのようなものである可能性があります。 –
多分、エンコード関連の質問があります。[#1](http://stackoverflow.com/questions/6300804/wchars-encodings-standards-and-portability)、[#2](http: /stackoverflow.com/questions/6796157/unicode-encoding-for-string-literals-in-c0x)、[#3](http://stackoverflow.com/questions/7562609/what-does-cuchar-provide-and) –