當在我的應用程序中調用此拷貝構造函數時,此拷貝構造函數進入無限循環,即不斷調用自身。 當我調試終止在第一行本身的程序。 使用的foreach循環是一個Qt foreach。錯誤:模板拷貝構造函數自己調用
template<class TValue>
Locus<TValue>::Locus (const Locus<TValue>& source) : QVector<TValue>(source) // program terminates here
{
std::cout << "calling self from here " << std::endl;
foreach (typename Locus<TValue>::value_type l, source)
{
this->push_back(l);
}
}
你的拷貝構造函數不是模板。這只是一個普通的函數(就像構造函數可以被稱爲那樣)。 – 2012-03-27 10:20:37
對不起,我沒有得到你... – shofee 2012-03-27 10:28:15