C#7.3 readonly struct type" this"参考

时间:2018-06-19 01:37:43

标签: c#

readonly struct type

  

this引用而不是接收者的副本始终是通过引用成员方法传递的in参数。使用readonly struct时,此优化可以节省更多复制。

这究竟是什么意思?当使用&#34时,普通结构总是复制副本;这个"在构造函数中?

1 个答案:

答案 0 :(得分:0)

将结构作为参数传递给函数时,它会复制整个结构并将其提供给函数。

因为你正在使用 readonly struct ,所以你基本上承诺它永远不会改变。

当你在传递给它的函数上使用(in)修饰符时,你基本上承诺你根本不会改变结构。因此,作为参考(基本上是指针)传入是安全的,而不是防御性地复制整个事物。