Design Pattern - Structural Pattern - Proxy

#include "stdafx.h"
#include <iostream>
using namespace std;

class Subject
{
public:
 virtual void Request() = 0;
};

class RealSubject : public Subject
{
public:
 virtual void Request()
 {
  cout << "Called RealSubject.Request()" << endl;
 }
};

class Proxy : public Subject
{
public:
 virtual void Request()
 {
  _realSubject = new RealSubject();
  _realSubject->Request();
 }
private:
 RealSubject *_realSubject;
};

int _tmain(int argc, _TCHAR* argv[])
{
 Proxy *proxy = new Proxy();
 proxy->Request();
 return 0;
}

 

 

輸出結果:

Called RealSubject.Request()
請按任意鍵繼續. . .

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章