我有一个Vec<Vec<char>>
作为控制台帧缓冲区。
我想渲染缓冲区,但这会让我print!()
陷入困境。我想将内部表示&Vec<char>
为&str
(不进行转换,不制作新的String,而只是进行转换)以将其整体打印print!()
。
是否有可能,或者print!()
对于许多字符而言已经快于print!()
单个字符串切片?
A&str
表示对使用UTF-8编码存储字符串的存储位置的引用。
由于您Vec<char>
不是使用UTF-8编码的字符串,因此无法String
在您可以引用的位置创建新的内存。
幸运的是,转换非常方便快捷,如果v
是您的话Vec<char>
,那就简单了v.iter().cloned().collect::<String>()
。如果您不再希望保留旧版本v
,则可以替换.iter().cloned()
为.into_iter()
。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句