c++ - 无法从派生类指针转换为基类指针
问题描述
我有一个简单的 3 级层次结构。
class A { ... }
class B : public A { ... }
class C : public B { ... }
我正在尝试做这样的事情(GetCPointer 返回一个 C*):
A* baseClassPointer = GetCPointer();
但我收到了这个错误。
cannot convert 'C*' to 'A*' in initialization
我假设这种转换是隐含的。我也尝试过static_cast
,dynamic_cast
但没有解决这个错误。我错过了什么?
解决方案
推荐阅读
- css - 在 RMarkdown xaringan /reveal.js 幻灯片中打开和关闭幻灯片编号显示
- php - 与 MongoDB 的 PHP SSL 连接
- matplotlib - 如何根据坐标放置matplotlib图例
- google-apps-script - 试图减少将工作表从多个电子表格复制到合并的主版本的 GAS 代码的运行时间
- javascript - React JS交通灯模拟器中的模式错误
- php - $_SESSION 在不应该的时候回显?
- java - 我应该在前端还是后端验证 reCAPTCHA?
- python - 如何从两列创建一个虚拟数据框?
- craftcms - Craft cms 使用查询参数搜索多个字段
- c# - Find Closest number in Data as Class in C# WPF 有错误?