g ++表示在調用訂單的複製構造函數的主程序中存在一行時,調用(Order)(Order &)中沒有匹配項。爲什麼這個拷貝構造函數不工作?
Order.h-它包含類順序
class Order
{
private:
int orderNo;
public:
Order()
{}
//Copy Constructor
Order(Order &o)
{
orderNo = o.putOrderNo();
}
Order(int i)
{
orderNo = i;
}
};
的示數的代碼是在主文件 -
bool setCurrentOrder(Order o)
{
CurrentOrder(o); //currentOrder is a global var defined elsewhere.
//after this, there are some comparisons to determine
//whether the object was copied, then true or false is returned.
}
編譯器拒絕接受線 「CurrentOrder(O)」,其將o的詳細信息複製到名爲CurrentOrder的另一個Order類對象中。 我是否必須重載=運算符還是有其他方法可以解決這個問題?
編輯
此代碼已經過時了,因爲我已經解決了這個問題,我也重新設計這一點,其他的代碼,所以我現在有一些新的,我應約快問!
請研究發佈指南,你應該提取一個最小的例子,格式一致等。 –
嗯,好的。下次我會記住這一點。然而,在這裏,我覺得源文件足夠小,這就是我爲什麼這麼做的原因。 – Raghav
這不是關於絕對大小,而是關注問題的本質。許多問題在這裏甚至被問到之前都會這樣回答。 –