gpt4 book ai didi

c++ - 如何在 C++ 中初始化结构数组?

转载 作者:IT老高 更新时间:2023-10-28 12:42:59 28 4
gpt4 key购买 nike

我的 C++ 代码中有以下 struct(我使用的是 Visual Studio 2010):

struct mydata
{
string scientist;
double value;
};

我想做的是能够快速初始化它们,类似于 C99 中的数组初始化或 C# 中的类初始化,á la:

mydata data[] = { { scientist = "Archimedes", value = 2.12 }, 
{ scientist = "Vitruvius", value = 4.49 } } ;

如果在 C++ 中这对于结构数组是不可能的,我可以为对象数组执行此操作吗?换句话说,数组的底层数据类型并不那么重要,重要的是我有一个数组,而不是一个列表,并且我可以用这种方式编写初始化程序。

最佳答案

C++ 中的语法几乎完全相同(只是省略了命名参数):

mydata data[] = { { "Archimedes", 2.12 }, 
{ "Vitruvius", 4.49 } } ;

在 C++03 中,只要数组类型是 aggregate 就可以使用。 .在 C++11 中,这适用于任何具有适当构造函数的对象。

关于c++ - 如何在 C++ 中初始化结构数组?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8534526/

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