我有一個類class1
及其構造函數class1(int i)
和複製構造函數class1(const class1& other)
。C++指針指向的類的副本的動態分配
class1
的實例是動態創建的,因爲在編譯時int
參數是未知的。
我的問題是,我必須通過生產對象和消費對象之間的指針:
void producer::produceAndSend(...) {
class1 *c1 = generate(...);
consumerObj.set(c1);
}
class consumer {
class1 *internalC;
void set(class1 *c);
}
void consumer::set(class1 *c) {
this->internalC = c; //This only copies the pointer, not the content
}
我想存儲由c1
所指向的對象的副本,此副本必須指出internalC
。 我該如何做到這一點?
你可以做'internalC = new class1(* c)'。 – 0x499602D2
這會導致錯誤:無法將'class1 **'轉換爲'作業中的'class1 *' –
您是否可以發佈已更新的'consumer :: set'實現,因爲我認爲0x49 ...建議看起來正確。 – ilent2