是否可以使用带成员初始化列表的默认参数?
Vector3::Vector3(double xI, double yI, double zI)
: x(xI=0), y(yI=0), z(zI=0)
{
}
构造函数总是将x,y和z设置为0,即使您通过设置参数调用它也是如此。
答案 0 :(得分:5)
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)来初始化成员。
答案 1 :(得分:0)
赋值运算符=
始终返回已分配给左侧变量的内容,在您返回0
的情况下,它将分配给x
,y
和{ {1}}。