tiny utf8
Version 4.4.3
Tiny-UTF8 adalah perpustakaan untuk integrasi Unicode yang sangat mudah ke dalam proyek C ++ 11 yang sewenang-wenang. Perpustakaan hanya terdiri dari kelas utf8_string , yang bertindak sebagai pengganti drop-in untuk std::string . Implementasinya berhasil di tengah antara jejak memori kecil dan akses cepat. Semua fungsionalitas std::string karenanya digantikan oleh versi UTF-32 berbasis codepoint yang sesuai-menerjemahkan setiap akses ke UTF-8 di bawah kap.
c ) ( r ) begin / end sekarang mengembalikan iterator berbasis codepoint, sedangkan raw_ ( c ) ( r ) begin / end sekarang mengembalikan iterator berbasis byte.str.erase( std::remove( str.begin() , str.end() , U'W' ) , str.end() ) akan bekerja, tetapi str.erase( std::remove( str.raw_begin() , str.raw_end() , U'W' ) , str.raw_end() ) tidak akan (setidaknya tidak akan). Alasannya adalah: setelah panggilan ke std::remove , ukuran data string mungkin telah berubah dan panggilan kedua ke str.raw_end() mungkin telah menghasilkan iterator yang sekarang divalidasi.std::stringsizeof(utf8_string) ! Yaitu, termasuk trailing