怎么理解一个类实例化另一个类?
怎么理解一个类实例化另一个类?
怎么理解一个类实例化另一个类?
2020-10-09
“一个类实例化另外一个类”,严格来说,这句话是不对的。
其实,我们在提到“实例化”这个词语时,准确地说:实例化一个对象。“实例化”是类的一个具象化,就是在内存上开辟一块空间,这块内存空间就是一个对象,是这个“类”类型的。
类是逻辑上的,是没有实体的。 对象是有实体的。
假设存在继承 Class Worker : public Person
Person * p = new Worker(); 应该解释这句话:实例化了一个Worker类的对象,定义了一个指向Person类型的指针,但是现在让这个指针 p 指向Worker类的对象。
如果宽泛的讲,“一个类实例化另外一个类”是用基类的指针指向派生类的对象。
举报