如何将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

如何将game1类中的数组公开

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

这两个都描述了我在说什么。