私のプログラムでは、私が持っているポインタのさまざまなstd::vectorsをクリアするための小さな関数を作成しました。
template <class S>
void clearPtrVector(std::vector<S*> &a,int size)
{
for(size_t i = 0; i < size; i++)
delete a[i];
a.clear();
}
このようなデストラクタでこの関数を呼び出すときから、私はここで何か間違ったことをしたに違いありません:
clearPtrVector(neurons,neurons.size());
次の未定義の参照を2回取得します。
undefined reference to `void clearPtrVector<Neuron>(std::vector<Neuron*,std::allocator<Neuron*> >&, int)'
std :: allocatorが何であるかをよく知らないことを認めなければならないので、ここで問題が何であるかを推測することはできません。どんな助けでも本当にありがたいです。前もって感謝します!
-レフテリス