rust的string是utf-8串,而char是32字节,这样不会有性能损失吗
💡
原文中文,约200字,阅读约需1分钟。
📝
内容提要
本文讨论在Rust中遍历字符串时,编码转换可能导致性能损失,特别是对于包含emoji和汉字的字符串,转换成utf-32的代价较大。
🎯
关键要点
- 在Rust中遍历字符串时,编码转换可能导致性能损失。
- 与C/C++相比,Rust需要进行多次编码转换。
- 英文的utf-8转utf-32相对简单,类似于byte转int。
- emoji和汉字的utf-8转utf-32代价较大,emoji约为4个utf-8,汉字约为3个utf-8。
➡️