带有默认参数的成员初始化列表

Member initialization lists with default arguments

本文关键字:成员 初始化 列表 参数 默认      更新时间:2023-10-16

是否可以在成员初始化列表中使用默认参数?

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

构造函数总是将x、y和z设置为0,即使您在调用它时设置了参数。

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)来初始化成员。

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