下面这段程序描述了Qt源码中这几个类之间的关系和组织方式,虽然隐藏了许多细节,但相信还是能够体现出Qt源码如何使用代理模式的。 // 抽象主题类,定义模型接口classQAbstractItemModel{public:virtualQModelIndexindex(introw,intcolumn,constQModelIndex&parent=QModelIndex())const=0;virtualQVariantdata(constQModelIndex&index...
private:std::shared_ptr<Proxy>proxy;};intmain(){// 创建真实主题对象autorealSubject=std::make_shared<RealSubject>("A");// 创建代理对象,并将真实主题对象传入代理对象的构造函数中autoproxy=std::make_shared<Proxy>(realSubject);// 创建客户端对象autoclient=std::make_shared<Client>();// 设置代...