我有一个类定义为:
class Obj {
public:
int width, height;
Obj(int w, int h);
}
我需要它包含一个像这样的静态数组:
int presc[width][height];
但是,我无法在类中定义,因此可以创建指向 2D 数组的指针(出于好奇,还可以创建 3、4 和 5D 数组),将其作为类的成员,并将其初始化为构造函数如:
int ar[5][6];
Obj o(5, 6, &ar);
编辑:这里的想法是每个对象都有不同的宽度和高度,所以我用来表示该对象的数组对于该对象将是唯一的,但是一旦定义了该数组(最好在构造函数中),它就不会改变. 并且特定对象的宽度和高度值在编译时是已知的。
编辑:数组用于碰撞检测,方法是将presc
两个对象的数组叠加到一个大数组上,并查看重叠的位置,声明如下:
Obj player1(32, 32); //player with a width of 32 px and height of 32 px, presc[32][32]
Obj boss(500, 500); //boss with a width of 500 px and height of 500 px, presc[500][500]