gpt4 book ai didi

c++ - 如何初始化和更改数组作为结构的成员变量?

转载 作者:太空宇宙 更新时间:2023-11-03 10:42:08 26 4
gpt4 key购买 nike

例如,

struct Student
{
std::string name;
int scores[];
};

这合法吗?如果是这样,我如何将实际值放入数组中。在这个程序中,数组的长度可以是任何正整数。会是这样吗?

Student s;
s.scores = int scores[length]

最佳答案

Is this even legal?

没有。

使用 std::vector 让事情变得简单。

或者您可以通过存储指针和大小来模仿 std::vector,如 SingerOfTheFall 的回答中所示。

如果您知道 scores 将始终具有相同数量的元素,您应该使用 std::array 或原始静态数组,如下所示:

int scores[length]; // 'length' is a constant expression

现在您无法更改数组的大小。

关于c++ - 如何初始化和更改数组作为结构的成员变量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33431941/

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