meningkatkan string mpl

Hai dalam dokumentasi boost mpl saya telah menemukan mpl::string dan contoh berikut:

typedef mpl::string<'hell','o wo','rld'> hello;

Saya sedikit terkejut karena menurut saya di C atau C++ kita tidak boleh memiliki lebih dari satu karakter di antara karakter ' ?

Apakah itu normal dan valid?


person Guillaume07    schedule 25.04.2011    source sumber
comment
Sekadar informasi. Ini (cpp-next.com/archive /2012/10/) artikel memiliki solusi yang lebih baik jika Anda memiliki c++11 yang tersedia.   -  person KitsuneYMG    schedule 30.01.2013
comment
Tautan itu sekarang mati :(   -  person Sam Kellett    schedule 07.01.2015


Jawaban (1)


Ya, ini adalah C++ yang valid. Dari standar C++ yang ada, bagian [lex.conn]:

Literal karakter biasa yang berisi lebih dari satu c-char adalah literal multikarakter. Literal multikarakter memiliki tipe int dan nilai yang ditentukan implementasi.

person Yakov Galka    schedule 25.04.2011
comment
oh baiklah itu sebabnya kita tidak bisa memiliki 5 karakter di antara ' - person Guillaume07; 25.04.2011