【发布时间】:2011-06-29 22:40:46
【问题描述】:
在我的一个类 (ClassA) 中,我想创建另一个类 (ClassB) 的相关实例,为它提供对启动它创建的对象的引用。所以我为 ClassB 提供了一个带有(ref ClassB master)参数的构造函数。但在 ClassA 中,我不能只调用 var slave = new ClassB(ref this)。如何实现?
【问题讨论】:
-
我不完全确定您要在这里完成什么。您确实知道 .NET 中的引用类型已经通过指针实现,对吧?
new ClassB(this)将当前对象的引用传递回ClassB的构造函数。为什么需要ref? -
我不认为你真的打算通过参考传递
this。foo(ref bar)表示foo可以将bar指向其他地方。this是一个您无法更改的常量,并且在大多数情况下您只想保留它的一个值。