游戏开发论坛

 找回密码
 立即注册
搜索
查看: 2859|回复: 3

关于C++单件类继承的问题

[复制链接]

8

主题

21

帖子

21

积分

注册会员

Rank: 2

积分
21
发表于 2010-8-24 17:37:00 | 显示全部楼层 |阅读模式
如果父类是用到单件模式的,那么子类怎样继承才能用getSingletonPtr()来得到子类的实例指针,通过这个指针我可以访问子类特有的函数

201

主题

1437

帖子

1963

积分

金牌会员

Rank: 6Rank: 6

积分
1963
QQ
发表于 2010-8-24 19:56:00 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽

30

主题

422

帖子

433

积分

中级会员

Rank: 3Rank: 3

积分
433
发表于 2010-8-27 08:05:00 | 显示全部楼层

Re:关于C++单件类继承的问题

既然要访问子类的接口,那么这个用户应该是认识子类的了。
让子类覆盖getSingletonPtr直接返回子类指针,让用户直接通过子类访问这个接口。

4

主题

7

帖子

7

积分

新手上路

Rank: 1

积分
7
发表于 2010-8-30 15:07:00 | 显示全部楼层

Re:关于C++单件类继承的问题

没必要强转,子类重写接口,运用多态啊 ,
class A
{
public:
virtual A* GetInterface()
{
return m_ptr;  
}
private :
A* m_ptr;

}

class B:public A
{
public:
A* GetInterface()
{
return m_Bptr;  
}
private :
B* m_Bptr;


}


记住这里没有强制类型转换,子类就是父类,这样做没有任何问题的
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

作品发布|文章投稿|广告合作|关于本站|游戏开发论坛 ( 闽ICP备17032699号-3 )

GMT+8, 2025-6-7 04:40

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表