我有一个班级A
和一个班级B
,他们都需要使用班级C
。
我希望课程A
和B
能够处理C
的同一个实例,其方式是A
到C
所做的更改会影响C
使用的B
对象。
我看到实现这一点的唯一方法是使用观察者模式,但我很想知道这个问题是否有任何简单的解决方案。
答案 0 :(得分:5)
假设声明类似于以下内容并在构造函数中设置sharedC
:
class C{}
class A { private C sharedC; }
class B { private C sharedC; }
您使用C
的单个实例,并传递给需要共享副本的A
和B
个实例。
var c = new C();
var a = new A(c);
var b = new B(c);
最简单的方法之一(假设C
是class
,而不是struct
)