2
當我將指針傳遞給變量的引用時,還是獲取指向引用的指針?當我傳遞一個參考引用時,我會得到什麼? 我在一個類中使用standard library的堆棧實現,我想要一些包裝方法來防止非法訪問堆棧,但我得到了奇怪的segfaults,我縮小了我的getter方法,考慮堆棧。傳遞引用的指針/傳遞引用的引用
這些方法應該返回一個乾淨的引用/指向存儲在堆棧中的原始變量的指針嗎?
int& zwei() { return stack.top() };
和
int* eins() { return &stack.top() };
什麼叫「好吧,也許」是什麼意思? – Sim
@Sim:他說什麼「好,也許」意味着在這之前:*你的函數都返回一個有效的結果* ** * * * * * * * * * *對象仍然活着。在代碼之後:*您還應該檢查堆棧是否爲空*。這個「提供」和「非空棧」是他的意思是「好吧,也許」。 –
@Sim:'top()'的堆棧不能爲空有效。所寫的代碼不包含對's'的任何插入,所以'foo()'和'goo()'可能* *不可*,並且取決於*你*。另一方面,'boo()'永遠不會。 –