0
在沒有使用的垃圾收集器指針任何編程語言,我可以做創建臨時對象爲堆棧上的參數
DrawLine(new Vector(0, 0), new Vector(100, 100));
但在C++中,我們可以,如果DrawLine
是不是不負責刪除它的參數,所以調用DrawLine
有兩個向量(0,0)
和(100,100)
最短的方法是:
Vector v(0, 0);
Vector w(100, 100);
DrawLine(v, w);
有沒有一種方法,使之成爲一個單獨的語句呢?特別是如果v
和w
只是該單個函數的參數,並且沒有其他函數使用它,那麼它看起來有點冗長。爲什麼我就不能這樣做:
DrawLine(Vector(0, 0), Vector(100, 100));
「爲什麼我就不能這樣做:'的DrawLine(矢量(0,0),向量(100,100));'」 因爲'DrawLine'是愚蠢到要求左值或編譯器被打破? – MikeCAT
該行[do works](https://ideone.com/isPOZG)。 *你不能這樣做的另一個情況是它在你的編碼約定中被禁止。 – MikeCAT
@MikeCAT,謝謝!你是對的,它編譯! – Carucel