C++利用智能指针桥接模式设计
2013-07-06 12:38
316 查看
#include <boost/make_shared.hpp>
#include <boost/shared_ptr.hpp>
using namespace boost;
using namespace std;
class Bridge
{
public:
class Person;
Bridge();
~Bridge();
void ShowMsg();
private:
boost::shared_ptr<Person> m_person;
};
class Bridge::Person
{
public:
Person();
~Person();
void ShowMsg();
};
void Bridge::ShowMsg()
{
this->m_person->ShowMsg();
}
Bridge::Bridge():m_person(new Person())
{
}
void Bridge::Person::ShowMsg()
{
cout << "person" << endl;
}
Bridge::Person::~Person()
{
}
Bridge::Person::Person()
{
}
Bridge::~Bridge()
{
}
void main()
{
Bridge s;
s.ShowMsg();
int wait;
cin >> wait;
}
#include <boost/shared_ptr.hpp>
using namespace boost;
using namespace std;
class Bridge
{
public:
class Person;
Bridge();
~Bridge();
void ShowMsg();
private:
boost::shared_ptr<Person> m_person;
};
class Bridge::Person
{
public:
Person();
~Person();
void ShowMsg();
};
void Bridge::ShowMsg()
{
this->m_person->ShowMsg();
}
Bridge::Bridge():m_person(new Person())
{
}
void Bridge::Person::ShowMsg()
{
cout << "person" << endl;
}
Bridge::Person::~Person()
{
}
Bridge::Person::Person()
{
}
Bridge::~Bridge()
{
}
void main()
{
Bridge s;
s.ShowMsg();
int wait;
cin >> wait;
}
相关文章推荐