我想了解有关动态内存的一些信息:类模板的新建和删除,如下所示。
我有一些库(内部开发)定义的类模板,它定义了如下的类模板。
template <class DAT, class IDX, int ENTRYMX=0x20, int SUBMX=34, int bsz=8>
class HashTable : public public HashTableIn
{
HashTable ()
: HashTableIn(ENTRYMX),
...
...
...
}
在我的代码中,我将该模板类的对象用作:
mpRt = new HashTable<data_st,index_st>;
我明确删除了这个 mpRt(我知道智能指针......但目前它们没有在这个遗留代码中使用,所以让我们把它们排除在外)
delete mpRt;
我的问题:我想了解我是否必须做
delete [] mpRt
because the class template has a default argument of ENTRYMX = 0x20