a = b のようなことをすると問題なく動作しますが、a = a を実行すると、ベクトル内のすべての要素に対して -1.255 +-67 になります。これは私のコピー コンストラクターと代入演算子です。
VecXd(const VecXd &source){
dimension = source.dimension;
vector = new T[dimension];
for(int i=0; i < dimension; i++)
vector[i] = source.vector[i];
}
VecXd operator=(const VecXd &source){
dimension = source.dimension;
vector = new T[dimension];
for(int i=0; i < dimension; i++)
vector[i] = source.vector[i];
return *this;
}