对象声明[关闭]

问题描述 投票:-3回答:2

请给我一些从基类和派生类创建一个对象的例子,并解释一下这个概念(c++)。

谢谢你的解释。

Regards,Balu.I know new operator, will create object in heaps.

c++ new-operator keyword
2个回答
1
投票

如果我得到你写的 - 你试图创建一个类obj.与操作符new.但你的代码是不太正确的。它更像。class a * obj = new a();这意味着你得到一些内存,并从你的类a中用一些参数建立一个OBJ类;在类a中,你将需要一些 "构造函数",如:a(){this-&gt}{this-&gt}{this-&gt}{this-&gt}{this-&gt}{this-&gt}{this-&gt}{this-&gt}。a(){this->param = xx;this->param = xxx}。


0
投票

如果你声称 class a* obj = new b,那么班级 b 必须是类a的派生类型。

class a {};
class b : public a {};

你正在为类的内容分配空间,并使用 operator new. 因为类b是类a的一个类型,所以可以从分配的类b中请求一个指向类a的指针,因为类b是类a。

© www.soinside.com 2019 - 2024. All rights reserved.