在C#中,通过引用传输小字符串还是大字符串更好?我假设按值传输会迫使运行时创建输入字符串的克隆,因此速度会更慢。因此,是否建议所有字符串函数都通过引用来传值?
发布于 2012-09-02 15:54:59
我认为按值传输会迫使运行时创建输入字符串的克隆,因此速度会更慢。
你的假设是错误的。String是一种引用类型--调用带有字符串参数的方法只是通过值复制该引用。没有涉及到克隆。这是一个固定的大小-4或8字节取决于您使用的CLR。
(即使它是一个值类型,它基本上也必须包含对其他类型的引用-直接在堆栈上分配可变大小的值类型是没有意义的。将为该变量分配多少空间?如果将变量的值更改为更短或更长的字符串,会发生什么情况?)
https://stackoverflow.com/questions/12234283
复制相似问题