从抽象类派生的类的对象应在免费商店中
Objects of a class derived from an abstract class should be in free store?
我试图将我的头缠绕在TC PL中对我来说似乎很奇怪的头。这是关于分配从抽象类派生的类的分配。
由于我们对抽象类型的表示一无所知,我们必须在免费商店上分配对象并通过参考和指针访问它们。
为什么要免费商店?如您已经知道,从抽象类衍生的类可以像其他任何本地变量一样分配。我不知道TC 究竟在这句话中试图传达什么。
我认为这是一个不正确的陈述。例如,如果您有一个抽象的基类B并派生(非抽取)类D,则可以写
D d;
B &b = d;
这是D类型的对象,只要此代码在某些函数中,就可以在堆栈中创建。
他们的意思是,如果您想使用某些抽象类而不知道是什么具体类型,则必须对其使用动态分配,即您不能编写abstract_class A = concrete_class B;
相关文章:
- 什么时候调用组成单元对象的析构函数
- 对RValue对象调用的LValue ref限定成员函数
- CMake-按正确顺序将项目与C运行时对象文件链接
- 空基优化子对象的地址
- 将对象数组的引用传递给函数
- 你能重载对象变量名本身返回的内容吗
- C++使用整数的压缩数组初始化对象
- 找不到成员对象:没有名为get_event()的成员,也处理多态性和向量
- 将对象移动到std::shared_ptr
- 代理对象的常量正确性
- 提升 ASIO 无法识别计时器对象
- 将Ref对象作为类成员
- 将包含C样式数组的对象初始化为成员变量(C++)
- 如何返回一个类的两个对象相加的结果
- 使用std::函数映射对象方法
- 如何在C++非托管/本机 DLL 中从注册免费 COM C# 托管 DLL 创建 COM 对象
- 我应该只在免费商店上为一次调用创建对象吗?
- 为什么免费存储区中对象的生存期绑定到范围
- 从抽象类派生的类的对象应在免费商店中
- 在免费商店中创建对象有什么用