的開始,我想我應該以詳細的方式描述了這個問題。如何返回一個指針INT,指出矢量<int>
class solution{
public:
int* function(int para){
//clear ret
ret.clear();
//some lines to manipulate the ret;
//...........
return ret.data();
}
private:
std::vector<int> ret;
}
我很喜歡使用像這樣的指針。但是設計要求假定使用int *作爲返回。那麼,這種方法是否可以保證函數返回指針可用?
['vec.data()'](http://en.cppreference.com/w/cpp/container/vector/data) – Borgleader
@Borgleader在這種情況下未定義的返回值 –
如果您要返回一個指針在第一個元素'vec'因爲'vec'是按值傳遞,並將在函數結束時被銷燬,你會得到不確定的行爲。 –