var classA = ClassA(); var classB = ClassB(); var other = OtherClass();
您是否想以这种方式使用绑定(bind)到此类实例的属性:
/* set */ var other = new OtherClass(); ClassA.OtherClassTable.Add(classA, other); /* get */ OtherClass data = null; var result = ClassA.OtherClassTable.TryGetValue(classA, out data);
而不是下面这个?
/* set */ classB.OtherClass = other; /* get */ var result = classB.OtherClass;
除非有特殊需要,否则答案似乎很明显。这里当然还有其他问题:
什么是弱引用,为什么要使用它?
这个
MSDN文章简短地解释了这个话题。它基本上说弱引用不会延长对象的生命周期,因为一旦应用程序代码仍然可以访问这样的对象,它就可以被垃圾回收。弱引用可用于指向应该可用于 GC 的对象(如果它们没有被主动使用)。但是,如果程序使用大量小对象,弱引用会对内存使用产生负面影响。像
cái này 这样的主题和
cái này还应该澄清一些遗留的疑问。
avoid using weak references as an automatic solution to memory management problems. Instead, develop an effective caching policy for handling your application's objects.
Tôi là một lập trình viên xuất sắc, rất giỏi!