定义:单来源调用指一个类的生成工作只能由特定类来执行。eg李宁牌鞋子只能由李宁专卖店生产 这个问题归结起来,也就是说在工厂模式中,指定的产品类只能通过具体的特定工厂类来生成,而不能自己new出来或者通过其他类生成。具体的,我们就在代码实现中进行说明了。这里我们来一步一步分析。 ...
定义:
单来源调用指一个类的生成工作只能由特定类来执行。
eg李宁牌鞋子只能由李宁专卖店生产
这个问题归结起来,也就是说在工厂模式中,指定的产品类只能通过具体的特定工厂类来生成,而不能自己new出来或者通过其他类生成。
具体的,我们就在代码实现中进行说明了。
这里我们来一步一步分析。
首先,一个类实例(对象)不能自己产生,那么。我们就需要屏蔽构造函数了。
那么,屏蔽了构造函数之后,如何获取一个实例呢。
有两种方案可以实现。
方案一:
通过继承获取构造函数执行权限。如代码
class base{protected: base() { Trace(""); }};class driver:protected base{public: void test() { base b; }};int main(int argc, char const *argv[]){ driver d; d.test(); return 0;}
原标题:singleCall单来源调用解析及实现
关键词:
*特别声明:以上内容来自于网络收集,著作权属原作者所有,如有侵权,请联系我们:
admin#shaoqun.com
(#换成@)。