【发布时间】:2009-09-14 13:56:29
【问题描述】:
我想要一个参数可以是Int32或Single的方法:
void myMethod( ref object x )
{
//...CodeHere
}
由于 C# 不允许我在使用 out 或 ref 时传递对象的特化,我发现的解决方案声称将变量分配给 object 类型的变量就足够了:
Single s = 1.0F;
object o = s;
myMethod( ref o );
那没用。根据我查看的 Microsoft 文档,o 应该是指向s 的指针。我查看的资料表明,分配非原始类型会生成引用而不是 new 实例。
是否有可能有一种方法可以传递Single 或Int32 或object 的任何其他类型?
【问题讨论】:
-
您误读了摆在您面前的任何拳击文件。它为原始值的副本生成了一个装箱实例。
标签: c# pass-by-reference