動的メモリについて何かを理解したい: 以下のクラス テンプレートの新規および削除。
以下のようにクラステンプレートを定義するいくつかのライブラリ(社内で開発された)によって定義されたクラステンプレートがあります。
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