gpt4 book ai didi

c++ - 使用类中的另一个成员初始化成员数组的大小

转载 作者:行者123 更新时间:2023-11-30 02:28:37 26 4
gpt4 key购买 nike

这是我的代码

class world{
public:
int w;
int h;
int windowWidth = 80;
int windowHeight = 46;
char windowMap[windowHeight][windowWidth];

我想通过使用 windowWidth 和 windowHeight 来调整 windowMap[46][80] 的大小,但出现此错误

warning: non-static data member initializers only available with -std=c++11 or -std=gnu++11

是否有解决此问题的方法或实现相同结果的更好方法?

最佳答案

宽度和高度的变量必须是常量和静态的,因为它们应该在编译时可用。否则,您可以使用 vector 并在构造函数中动态分配内存。然后您可以将 windowMap 的大小指定为参数,从而使类更可重用。

简单的变化是:

const static int windowWidth = 80;
const static int windowHeight = 46;

关于c++ - 使用类中的另一个成员初始化成员数组的大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40561973/

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