Trong Objective-C, nó chết đơn giản:Làm thế nào để thay đổi trường hợp của chuỗi UTF-8 latin trong C++?
NSLog(@"%@", [@"BAÑO" lowercaseString]); // Outputs "baño".
Trong C++, tương đương là gì? Có ai có thể cung cấp mã hợp lệ cho việc này để tạo ra cùng một đầu ra không? Có một cách STL đẹp để làm điều này mà không dựa vào ICU, Boost, hoặc bất kỳ libs bên thứ 3 nào khác không?
phi giải pháp hiện tại của tôi là:
using namespace std;
string s = "BAÑO";
wstring w(s.begin(), s.end());
transform(w.begin(), w.end(), w.begin(), towlower);
// w contains "baÑo"
viết chức năng của riêng bạn http://www.cplusplus.com/forum/beginner/70692/ –
Giải pháp phi hiện tại của bạn có vẻ khá tốt với tôi! – fluffy
@fluffy Tôi đồng ý! Tôi muốn bọc "không giải pháp" vào một hàm trợ giúp, và gọi nó là một giải pháp tốt darn tốt. – dasblinkenlight