标题说得不清楚,举个例子吧
比如一个一个类的对象:
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();