c++ - 外部变量和数组声明问题 C++

标签 c++ arrays global-variables constants extern

我对外部变量和数组声明有疑问。 如何使用不在可声明文件中的全局变量声明数组。

file1.cpp

const int size = 10;

主文件.cpp

extern const int size;

void main()
{
  int mas[size];
}

int mas[size];

这一行有问题。 请大家猜猜??

最佳答案

你不能。数组大小必须是常量表达式;如果它是一个变量,那么该变量必须是 const 并在同一个翻译单元中初始化,以便它的值可用作常量。

如果您想在多个翻译单元之间共享值,请在 header 中定义并包含它。

关于c++ - 外部变量和数组声明问题 C++,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30183183/

相关文章:

c++ - 是否可以有一个变量,该变量是对具有不同类标识符的模板类的引用?

arrays - 排序算法与完全排序的总比较

arrays - 将输入字段与数组进行比较

c++ - 我在这里使用全局状态吗,有没有更好的方法来做到这一点?

javascript - 如何从全局范围访问函数中的变量?

c++ - 在声明时对全局变量进行值初始化

c++ - 如何使用erase和iterator删除二维 vector 中的某一项?

c++ - 在 msgpack 的 C++ 实现中,如何在使用 pack_map 或 pack_array 序列化对象后反序列化对象?

C++ Wininet FtpOpenFile 成功打开.txt 但如何将其保存为字符串?

c - C语言中如何比较两个数组?