由于C#3.5没有ref关键字,(除非它没有,而且我遗漏了一些东西),我发现一个非常棘手的解决方法是使用这样的指针。
public unsafe uint toByteArray() {
byte[] arr = new byte[10];
return (uint)&arr;
}
然后我可以取消广播/引用它。但这似乎是泄漏。此外,我真的不想复制该数组,因为我无法对其进行编辑;我只想阅读参考。有什么明智的方法吗?
答案 0 :(得分:0)
在这种情况下,您可能不需要参考
public byte[] toByteArray()
{
byte[] arr = new byte[10];
...
return arr;
}
返回对创建的数组的引用,并且不复制任何内容,因为数组是.net中的引用类型。
通过引用返回(引用返回值)与返回引用类型实例不同。