这是我用来定义数组的代码,这段代码在我的Initialize()之上:
public Tile[,] tileArray;
这是我的受保护的overover void Initialize()中的代码声明它:
Tile[,] tileArray = new Tile[gridScope, gridScope];
Tile是一个用于表示我游戏的图块的类。
当我尝试运行此操作时,我确实收到了一个不一致的可访问性错误;但是,我不能在宣言面前公开,因为当时视觉工作室告诉我,public
是Tile
期待;
的无效表达。
我需要在其他类中引用这个数组,所以我可以操作tile,但我不知道如何使它一直公开。
如何公开tileArray
?
答案 0 :(得分:1)
initialize()
中您不需要Tile[,]
(这将创建一个本地版本的tileArray,而不是全局版本)。
即
// This tileArray is in "class scope"
public Tile[,] tileArray;
void initialize()
{
tileArray = new Time[gridScope, gridScope];
...
我甚至不会问你为什么要公开......
答案 1 :(得分:0)
这样做的最佳方法是封装方法并为数组提供gets和set。您不希望默认情况下将整个数组设为公共。需要更多关于你宣布它的地方的信息等以便更好地回答。
http://msdn.microsoft.com/en-us/library/dd460654.aspx
这两个都描述了我在说什么。