【发布时间】:2012-12-31 16:05:41
【问题描述】:
让我们将string 转换为[]byte:
func toBytes(s string) []byte {
return []byte(s) // What happens here?
}
这种演员阵容有多贵?是否执行复制?据我在 Go 规范中看到的:字符串的行为类似于字节切片,但不可变,这至少应该涉及复制,以确保后续切片操作不会修改我们的字符串 s。反向对话会发生什么? []byte <-> string 对话是否涉及编码/解码,如 utf8 runes?
【问题讨论】:
-
我已经编写了一个基准here,概述了性能影响。
标签: performance go type-conversion