首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

一种基类的设计,该如何解决

2013-07-09 
一种基类的设计基类的设计是否有问题?基类提供了一个copy函数函数原型大概为:基类指针 Copy(cosnt 基类指

一种基类的设计
基类的设计是否有问题?


基类提供了一个copy函数

函数原型大概为:

基类指针 Copy(cosnt 基类指针);

真不懂这种设计有什么好处? 感觉怪怪的,  首先你得知道你要派生有多少种类,

然后在Copy函数根据一些变量来区分是那种类, 然后用dynamic_cast来进行转换


 感觉怪怪的
[解决办法]
virtual base* clone() const

[解决办法]
显然是要通过多态的方式来进行深浅拷贝用的
[解决办法]

引用:
Quote: 引用:

ls.这个Copy方法设置为静态是在是不妥当,为什么呢,因为首先静态是为了保存当前状态用的,而你的Copy中却重新复制了一份数据给外部对象,所以你的这个static在这里无任何作用,失去了它原有的意义。
其次,在你的Copy构造函数中,尽量少做转型动作,用多态方式都是可以搞定的。


可否提供的你的代码,如果不方便提供的话, 可否提供相关的例子或者文章



引用:
C++提供了运行时动态机制,可以结合prototype模式,很好的完成这个需求。 


多谢你的思路,可否提供相关的例子, 

我学习一下,

多谢


看看这个

热点排行