为什么我的常量不能用于创建我的数组?
Why can my constant not be used to create my array?
我想创建一个包含多个图块对象的数组(称为 Tile
),但它说我的常量 int numTiles
不能用作...常量 int ... 什么?
我遇到问题的代码在这里(第 5 行错误):
// Variables - Tilemap
const int tileSize = 32;
const int screenWidth = GetScreenWidth();
const int numTiles = screenWidth / tileSize;
Tile tilemap[numTiles];
我得到的错误如下:expression must have a constant value the value of variable "numTiles" (declared at line 14) cannot be used a constant
我不确定为什么会遇到这个问题,因为看起来 numTiles
绝对是一个常量整数...有人可以解释这里的问题吗?
感谢 post 评论中的人向我解释了这一点:
变量在运行时计算,而需要在编译时计算(这是由于我使用了GetScreenWidth()
,编译时显然不能运行)。
我想创建一个包含多个图块对象的数组(称为 Tile
),但它说我的常量 int numTiles
不能用作...常量 int ... 什么?
我遇到问题的代码在这里(第 5 行错误):
// Variables - Tilemap
const int tileSize = 32;
const int screenWidth = GetScreenWidth();
const int numTiles = screenWidth / tileSize;
Tile tilemap[numTiles];
我得到的错误如下:expression must have a constant value the value of variable "numTiles" (declared at line 14) cannot be used a constant
我不确定为什么会遇到这个问题,因为看起来 numTiles
绝对是一个常量整数...有人可以解释这里的问题吗?
感谢 post 评论中的人向我解释了这一点:
变量在运行时计算,而需要在编译时计算(这是由于我使用了GetScreenWidth()
,编译时显然不能运行)。