小编Mix*_*hos的帖子

delete []是否会调用析构函数?

我正在编写一个模板类,它在内部管理给定类型的数组.像这样:

template<typename T>
class Example {
    // ...
private:
    T* objects; // allocated in c'tor (array), deleted in d'tor
    // ...
};
Run Code Online (Sandbox Code Playgroud)

我想知道objects当我删除它时,C++是否会调用每个对象的析构函数delete[] objects;.

我需要知道这一点,因为我的类中的对象始终不包含合理的值,因此不应该在不执行时调用析构函数.

此外,我想知道,如果我宣布一个固定大小的数组像析构函数将被称为T objects[100]作为的一部分Example<T>.

c++ delete-operator

11
推荐指数
2
解决办法
8433
查看次数

标签 统计

c++ ×1

delete-operator ×1