4

是否可以将默认参数与成员初始化列表一起使用?

Vector3::Vector3(double xI, double yI, double zI)
: x(xI=0), y(yI=0), z(zI=0)
{
}

构造函数始终将 x、y 和 z 设置为 0,即使您通过设置参数调用它也是如此。

4

2 回答 2

7
Vector3(double xI=0, double yI=0, double zI=0);  

Vector3::Vector3(double xI, double yI, double zI)
    : x(xI), y(yI), z(zI)
    {
    }

此外,如果您想知道代码在做什么,只需将参数设置为 0,然后传递它们的值(现在为 0)来初始化成员。

于 2013-06-05T00:29:12.850 回答
1

赋值运算符=总是返回它分配给左侧变量的内容,在您的情况下,它返回0,它被分配给x,yz

于 2013-06-05T00:50:04.230 回答