如何将game1类中的数组公开
本文关键字:数组 game1 | 更新日期: 2023-09-27 18:29:24
这是我用来定义数组的代码,此代码位于Initialize()之上:public Tile[,] tileArray;
以下是我在受保护的overide void Initialize()中声明它的代码:Tile[,] tileArray = new Tile[gridScope, gridScope];
Tile是一个类,用于表示我的游戏的Tile。
当我尝试运行这个时,我确实遇到了一个不一致的可访问性错误;然而,我不能将public放在声明前面,因为visualstudio告诉我public
是一个无效表达式,而Tile
需要;
。
我需要在其他类中引用这个数组,这样我就可以操作瓦片,但我不知道如何使它始终公开。
如何公开tileArray
?
在initialize()
中,您不需要Tile[,]
(这将创建tileArray的本地版本,而不是全局版本)。
即
// This tileArray is in "class scope"
public Tile[,] tileArray;
void initialize()
{
tileArray = new Time[gridScope, gridScope];
...
我甚至不会问你为什么要公开。。。
最好的方法是封装方法并为数组提供get和set。默认情况下,您不希望将整个数组公开。需要更多关于你在哪里申报等信息才能更好地回答。
http://www.c-sharpcorner.com/UploadFile/ggaganesh/EncapsulationInCS11082005064310AM/EncapsulationInCS.aspx
http://msdn.microsoft.com/en-us/library/dd460654.aspx
这两个都描述了我在说什么。