标题说得不清楚,举个例子吧
比如一个一个类的对象:
class shared{};
class a{};
class b{};
shared shared_object;
a a_object1,a_object2;
b b_object;
请问如何建立shared,a,b这三个类之间的关系,使得对象a_object1,a_object2,b_object,能共享对象shared_object?
------解决方案--------------------------------------------------------
一、
方法1:让a类和b类分别有一个指针,运行时让他们指向同一个shared对象。
方法2:让a类和b类分别从c类继承,让c类有一个静态的shared对象。
二、一个简单的singleton
//shared.h
class shared
{
public:
static shared* instance();
protected:
shared();
};
//shared.cpp
#include "Singleton.h "
shared *shared::instance()
{
static shared _instance;
return &_instance;
}
shared::shared()
{
}
需要shared时,只需要
shared* ps = shared::instance();
本文探讨了如何通过设计模式实现多个类的对象共享同一实例的问题。提出了两种解决方案:一是使用指针让不同类的对象指向同一个共享对象;二是利用继承,通过基类持有静态共享对象。此外,还介绍了使用单例模式来实现共享对象的方法。

被折叠的 条评论
为什么被折叠?



