-1
所以我有以下格式兩類:類成員矢量到其他載體的複製內容,然後交換回
class HashMinHeap {
private:
vector<int> MiniHeap;
public:
...
];
class HashTable {
private:
vector<HashMinHeap*> table;
public:
...
};
我想創建第二個向量,vector <HashMinHeap*> table2
,複製table
內容到table2
,然後我要去做一些操作到table
,最終將刪除table
的內容,所以爲了保留它的內容,我想將原始內容從table2
換回到table
。任何人都知道如何進行復制和交換? 謝謝! 注意table
有HashMinHeap
當我做複製和交換的對象。
不明白這一點。你想對你的矢量做一些時髦的可變操作,但不想鬆散它的內容?爲什麼不復制它並在副本上進行可變操作?另外,當你複製一個「指針向量」時,要注意向量只是做一個淺拷貝。換句話說,副本仍然指向相同的指針(相同的'HashMinHeap'對象)。 – tofi9 2015-02-06 02:47:13
如何正確製作副本,以便副本上的可變操作不會破壞原件? – Jovan 2015-02-06 03:08:49
爲什麼你使用'vector指針'?爲什麼不只是'矢量表'?在這種情況下,該向量的完整副本就像'vector myFullCopy = table;'一樣簡單。你可能有一個很好的理由,你爲什麼使用vector作爲指針,如果你能解釋它,那將是非常棒的。另一件我不清楚的是你爲什麼要拷貝一些對象,修改它,然後把它扔掉?你試圖解決什麼更大的問題? –
tofi9
2015-02-06 03:12:30