我有基类“ Actor ”和派生类“Outlaw”

“Outlaw”曾经是它自己的基类,我可以使用代码轻松地创建一个指针:

Outlaw * outlaw = new Outlaw();

现在,“Outlaw”继承了基本类型“Actor”

我将如何编写新代码来制作指向Outlaw类的指针?我是C++的新手,但是有很多C经验。

最佳答案

完全一样。

但是首先,也许您不需要动态分配的实例,也许您只需要一个变量。在那种情况下,只需声明一个变量,因为由于C++中其他所有功能的速度,动态分配的成本很高(所有都是相对的,动态分配相对于普通变量声明而言成本很高)。例如。,

Outlaw outlaw;  // That's it!

如果确实需要动态分配,则最好不要存储原始指针。

立即将其放在智能指针中,例如std::shared_ptrstd::unique_ptr:
std::unique_ptr<Outlaw> outlaw( new Outlaw() );

要使用上述智能指针类,只需包含<memory>即可。

关于c++ - 将内存分配给派生类的指针,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/12023740/

10-11 16:39