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

标签 c++ arrays variables global

请帮助我,我是 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/

相关文章:

bash - 在带有变量的 Bash 中使用 echo

c++ - 为什么我的函数会出现乱七八糟的 cout 语句?

arrays - 如何在 Swift 中将数组中的值分配给按钮

使用 glob 排除 index.php 的 PHP 代码

javascript - 将 Javascript 变量附加到 Jquery AJAX URL

c++ - 每次调用方法时增加变量

C++ - 在另一个头文件中包含一个头文件以使全局变量可用于数组声明

c++ - 使用 c++ api 更改 qpid 协议(protocol)版本号

c++ - 重载 malloc 以跟踪第三方库的内存使用情况

arrays - 是否有与 matlab ismember 函数等效的 fortran 函数?