我想確保自己在GetConnections
方法中返回connections
的確切副本。我將在現有節點之外進行編輯,如果它返回指向內存位置的指針(從而編輯節點的矢量),我的程序很可能會停止運行。我如何確保自己我正在返回克隆/副本而不是指針?確保返回值不是指針
std :: vector<NodeConnection*> Node :: GetConnections()
{
return this->connections;
}
class Node {
private:
std :: vector <NodeConnection*> connections;
public:
// getters
std :: vector <NodeConnection*> GetConnections();
};
在載體本身的NodeConnection*
不會被修改,所以在這裏不是問題。
你沒有返回一個指針,你正在返回一個副本。 – 0x499602D2