-6
一個例子返回一個指針所指向的對象,刪除通過從另一功能
#include<iostream>
using namespace std;
vector<int>* F()
{
vector<int>*x=new vector<int>(3);
x[1]=1; x[2]=2; x[3]=3;
return x;
}
現在我要刪除的載體或釋放由X在另一個函數F1指出的存儲器塊,喜歡的東西:
bool F1(vector<int>*x)
{
delete x;
return 1;
}
有沒有辦法實現我想要的?
謝謝!
是的。那個代碼。但這不是一個好主意。 – 2014-09-03 22:20:27
沒有理由這樣做。在後C++ 11編譯器中返回一個具體的'vector'是必須的,因爲'vector'是可移動的。你不需要返回一個新分配的vector。 – 101010 2014-09-03 22:21:59
@ 40two即使在C++ 03中。你更有可能獲得複製精簡而不是移動。 – juanchopanza 2014-09-03 22:24:16