gpt4 book ai didi

c++ - '智能感知 : expected an expression' on Assigning Value to Global Variable

转载 作者:行者123 更新时间:2023-11-30 02:49:58 25 4
gpt4 key购买 nike

请帮助我,我是 C++ 的新手

我在 VS 2010 中编写代码

我有一个全局变量

int avg[SAMPLE][3]; 

我想通过做这样的事情来修改主程序中的值:

avg[SAMPLE][3] = {
{30,96,56}, {13,114,55}, {16,118,46},{19,143,64}, {12,129,68},{13,153,69},{15,120,67}

};

但是,VS 显示错误:IntelliSense: expected an expression

但是当我直接声明值给全局变量的时候就没问题了

int avg[SAMPLE][3] = {
{30,96,56}, {13,114,55}, {16,118,46},{19,143,64}, {12,129,68},{13,153,69},{15,120,67}

};

也许这是微不足道的,但请帮助我,我是 C++ 的新手,因此对此一无所知。

非常感谢。

最佳答案

使用初始化列表重新赋值在 C++ 中不可用。 C++11 将此选项添加到类,但不会像您的示例那样添加到静态 C 数组。

你可以做的是拥有一个或多个 const global/static 你需要的值,并在需要时 memcpy 它们:

static const int g_avg[SAMPLE][3] = {
{30,96,56}, {13,114,55}, {16,118,46},{19,143,64}, {12,129,68},{13,153,69},{15,120,67}
};

// usage
int avg[SAMPLE][3];
// ...
memcpy(avg, g_avg, sizeof(avg));

关于c++ - '智能感知 : expected an expression' on Assigning Value to Global Variable,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20852339/

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