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