从ICU 4.2.1开始,将UnicodeString设置为C字符串的唯一简单方法是使用数据构造一个新的UnicodeString,然后将所需的字符串设置为该新字符串,从而分配,复制和取消分配数据比我想要的还要多。

有没有一种方法可以将UnicodeString设置为(空终止/长度)C字符串,而无需手动分配数据?

也许是在较新版本的ICU中? (除了4.2.1以外,我没有检查过文档的其他版本,而这是我发行版中的最新版本。)

看起来应该是setTo(const char*)方法,因为您可以使用C字符串构造UnicodeString。

最佳答案

我看不到这样做的方法,我会向setTo提出功能请求-甚至为此提供一个补丁!

09-13 13:09