前者は要素の型がポインタである場合に対してデストラクタを特殊化、
後者は要素をstd::pairにして[]演算子をオーバーロードすれば良いと思うよ!