搜索周圍,找不到任何意見我的問題。我正在嘗試爲具有包含指向抽象基類的指針的私有變量的類創建副本構造函數。C++複製構造基類指針
#include "BaseClass.hh"
ClassA::ClassA()
{ }
/* Copy construct a ClassA object */
ClassA::ClassA(const ClassA& obj)
{
std::map<std::string, BaseClass*>::const_iterator it;
//ClassA copy = obj;
for(it = obj.ind.begin(); it != obj.ind.end(); it++)
{
copy.ind[it->first]=(it->second);
}
}
//in .hh file
private:
std::map<std::string, BaseClass*> ind;
我是否關閉?如果沒有,我該如何解決這個問題?
您的意思是++以及it ++在'for'子句中嗎? –
BaseClass和ClassA如何相關? ClassA是否公開繼承BaseClass? – Jagannath
我認爲你必須解釋的第一件事是:爲什麼你需要一個自定義的拷貝構造函數?這個人爲你提供什麼,你希望它沒有?還有其他人指出:ClassA是否繼承自BaseClass?或者它是一種不同的關係? – Rollie