gpt4 book ai didi

c++ - 如何在 C++ 中用列表初始化对象?

转载 作者:塔克拉玛干 更新时间:2023-11-03 07:43:17 25 4
gpt4 key购买 nike

抱歉,如果这是一个基本问题,但我找不到答案。我的问题是在哪里可以找到有关如何使用列表初始化对象的文档。像下面这样?

class TestClass {
public:
int a;
int b;
};

然后初始化一个对象:

TestClass obj = TestClass{ 1, 2};
cout << obj.a << " " << obj.b << endl;

我只找到了this页面。

好像是方法(2),但是没有提到规则是什么。比如a,b,...一定要public吗?我试过如果在它们之后添加一个 private int c 它不起作用。对于结构,我明白了,我的问题是关于类的。

谢谢

最佳答案

因此,我发现您可以在 C++ 中使用该样式初始化任何东西,只要该东西是“聚合”即可。现在!什么是聚合??嗯,这取决于我们谈论的是什么 C++ 标准——C++11、C++14 等……。这在对 C++11 aggregate initialization for classes with non-static member initializers 的回答中得到了 Eloquent 讨论。 .我真的希望这会有所帮助。

关于c++ - 如何在 C++ 中用列表初始化对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44812726/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com