一个 : 在函数声明后做什么

What does a : do after a function declaration?

本文关键字:什么 声明 函数 一个      更新时间:2023-10-16
Rectangle(Point2D center, double w, double h, double r, double g, double b):center(center)
    {
        ...
    }

此代码的:center(center)部分有什么作用?

:使用

center参数初始化center成员。

在大多数情况下(并非总是如此!)您的代码

Rectangle(Point2D center, double w, double h, double r, double g, double b):center(center)
{
    ....
}

可以替换为

Rectangle(Point2D center, double w, double h, double r, double g, double b)
{
    this->center = center;
    ....
}

您可以在此处阅读有关C++初始化列表的更多信息

它用于初始化元素。由于C++是面向对象的,因此所有内容都被视为对象甚至数据类型。因此,当您使用初始化列表时,对象在为其创建对象时被初始化。

这被认为是比直接分配给变量更好(更快)的方法。

由于定义和声明是一次性发生的。