Eve1yn0 2023-01-31 18:01 采纳率: 64.5%
浏览 33
已结题

关于父类强转子类的小问题

如下简单的代码所示,不理解为什么这么写后,父类指针还是无法调用子类的特有成员函数

void test01()
{
    //base为父类  Person为子类
    Base *p = new Person;
    p->myBase();
    Person *per = (Person*)p;
    p->myPerson();    //执行后报错
}
  • 写回答

3条回答 默认 最新

  • Huazie 全栈领域优质创作者 2023-01-31 18:07
    关注
    • p指针 还是 Base父类,当然不能引用子类的方法
    • 你需要使用 per 指针引用, per->myPerson();
    评论 编辑记录

报告相同问题?

问题事件

  • 已结题 (查看结题原因) 1月31日
  • 修改了问题 1月31日
  • 创建了问题 1月31日

悬赏问题

  • ¥200 csgo2的viewmatrix值是否还有别的获取方式
  • ¥15 Stable Diffusion,用Ebsynth utility在视频选帧图重绘,第一步报错,蒙版和帧图没法生成,怎么处理啊
  • ¥15 请把下列每一行代码完整地读懂并注释出来
  • ¥15 pycharm运行main文件,显示没有conda环境
  • ¥15 寻找公式识别开发,自动识别整页文档、图像公式的软件
  • ¥15 为什么eclipse不能再下载了?
  • ¥15 编辑cmake lists 明明写了project项目名,但是还是报错怎么回事
  • ¥15 关于#计算机视觉#的问题:求一份高质量桥梁多病害数据集
  • ¥15 特定网页无法访问,已排除网页问题
  • ¥50 如何将脑的图像投影到颅骨上