这是我的问题陈述:
除了复合模式,我什么也想不到,但我担心的是: - 我不想将INSTANCE OF X传递给execute()方法参数中的所有对象,但该方法需要SAM的相同实例。
答案 0 :(得分:0)
我假设所有带有execute()方法的对象都有一个公共基类。我会给基类一个静态成员,它存储一个引用或指向X或X本身的指针。然后,您可以调用base :: SetX()或base :: GetX()。
(这也允许您使用基类中的互斥锁控制对它的访问,如果它成为多线程应用程序的话)。
X听起来像一个单身人士,所以根据不可变的X是多少,你可能只想把它变成全局的。