社区
C++ 语言
帖子详情
请问有什么办法在已知基类的指针能访问继承类的成员函数吗?
kingcy
2003-08-16 05:42:58
高手能给个思路吗?
例如一个应用类的指针Application app*
子类 class SubApp: public Application
SubApp *myapp;
如何使app指向myapp?
...全文
48
2
打赏
收藏
请问有什么办法在已知基类的指针能访问继承类的成员函数吗?
高手能给个思路吗? 例如一个应用类的指针Application app* 子类 class SubApp: public Application SubApp *myapp; 如何使app指向myapp?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
2 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
njtu
2003-08-16
打赏
举报
回复
可能使我没明白你的意思。
指针是什么类型关系并不是很大,因为指针可以转换。
关键是你的对象是什么类型的,转换不当会出问题。
subApp* myapp = new subApp;
app = dynamic_cast<Application>myapp;
app->
.....
没有问题。
如果下面这样:
Application* app = new Application;
myapp = dynamic_cast<subApp>app;
//抛出异常
app->
oopig
2003-08-16
打赏
举报
回复
使app指向myapp就很简单:app = myapp;
用基类的指针访问子类的成员函数不是不可以,但是必须保证基类指针指向的确实是子类对象,而且这样很危险,不推荐使用。代码如下:
#include <iostream>
using namespace std;
class A
{
};
class B : public A
{
public:
void Hello()
{
cout << "hello" << endl;
}
};
int main()
{
B b;
A *pA = &b; //必须保证基类指针指向的是子类对象
B *pB = static_cast<B*>(pA); //把基类指针转换成子类指针
pB->Hello();
return 0;
}
C++学习笔记(13)——利用对象、引用、
指针
调用虚函数.pdf
.
c++多态性与虚函数习题答案 (2).pdf
.
c++面向对象课后答案第9章.docx
.
C++超经典练习题(配答案).doc
C++超经典练习题(配答案).doc
C++大作业 每
类
学生学费和奖学金的分
类
C++大作业 每
类
学生学费和奖学金的分
类
内有源程序 伪代码 截图 WORD 文档
C++ 语言
65,210
社区成员
250,518
社区内容
发帖
与我相关
我的任务
C++ 语言
C++ 语言相关问题讨论,技术干货分享,前沿动态等
复制链接
扫一扫
分享
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
请不要发布与C++技术无关的贴子
请不要发布与技术无关的招聘、广告的帖子
请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下
试试用AI创作助手写篇文章吧
+ 用AI写文章