gpt4 book ai didi

c++ - 限制数组类型的大小,同时还没有实例

转载 作者:行者123 更新时间:2023-11-28 04:16:20 25 4
gpt4 key购买 nike

我有以下最小测试程序:

struct Test { 
double contents [1000000000];
};

int main () {
return 0;
}

它拒绝编译,即使编译器不知道我是在堆栈上还是在堆上静态实例化 Test。为什么编译器会提示?堆上的对象是否也限制为 2GB?

编译报错:test.cpp(2): error C2148: total size of array must not exceed 0x7fffffff bytes

平台:Windows 10 64 位,16GB 内存

编译器:Microsoft (R) C/C++ 优化编译器版本 19.16.27027.1 for x64 版权所有 (C) Microsoft Corporation。保留所有权利。

最佳答案

这似乎是 MSVC 的限制。我尝试使用 32 位 (x86) 和 64 位 (x64) 编译器编译您的代码并得到相同的结果(使用编译器版本 19.13.26132,MSVC 2017 进行测试)。

关于c++ - 限制数组类型的大小,同时还没有实例,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56518084/

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