首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在函数之间通过引用传递字符串是否更快?

在函数之间通过引用传递字符串是否更快?
EN

Stack Overflow用户
提问于 2012-09-02 15:52:55
回答 1查看 520关注 0票数 4

在C#中,通过引用传输小字符串还是大字符串更好?我假设按值传输会迫使运行时创建输入字符串的克隆,因此速度会更慢。因此,是否建议所有字符串函数都通过引用来传值?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-09-02 15:54:59

我认为按值传输会迫使运行时创建输入字符串的克隆,因此速度会更慢。

你的假设是错误的。String是一种引用类型--调用带有字符串参数的方法只是通过值复制该引用。没有涉及到克隆。这是一个固定的大小-4或8字节取决于您使用的CLR。

(即使它是一个值类型,它基本上也必须包含对其他类型的引用-直接在堆栈上分配可变大小的值类型是没有意义的。将为该变量分配多少空间?如果将变量的值更改为更短或更长的字符串,会发生什么情况?)

票数 11
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/12234283

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档