通过 reference/value — Boxing/unboxing 关系

Pass by reference/value — Boxing/unboxing relation

我正在阅读有关 passing by reference in C# 的内容,而在阅读时我读到了以下让我感到困惑的句子。

"There is no boxing of a value type when it is passed by reference."

虽然我知道什么是拳击,但我想我错过了这句话中包含的实际深度信息。我知道它基本上说没有装箱发生,当然也没有拆箱,但我还能从中得出什么其他结论?路过 value/reference 是否与 boxing/unboxing 有关?

如果您通过引用传递值类型,则不涉及装箱和拆箱。简而言之,正如 c# 中所述,存在内存别名。您甚至可以在 Linqpad 中尝试。在 IL 代码中显示后,您将看到没有涉及 boxing/unboxing。