Clion未初始化记录类型:player。

15

我几周前开始学习C ++。现在我正在了解类和一切内容,我想知道对象实例化的原理。在这段代码中:

class Player
{
    public:
        int x, y;
        int speed;
};

int main ()
{
    Player player {};

    return 0;
}

如果我在Player player {}中不使用大括号,IDE会发出警告。我使用的是Clion 2017.2.3。警告显示:“未初始化记录类型:player”,似乎来自Clang-Tidy,但我不确定它到底是做什么的。

那么,这个很重要吗?我必须在对象实例化中使用大括号吗?

对不起,我的语法错误,英语不是我的母语。

1个回答

17

如果您不提供初始化列表,对象将未进行初始化(因为您没有默认构造函数),因此成员具有不确定的值。使用初始化列表可确保所有成员都获得默认初始化。

该警告提示您可能有未初始化的成员变量。

有关来自clang-tidy的此检查的更多详细信息,请参见此处


啊,好的,空值性。 - Jammer

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接