两类交互
本文关键字:两类 交互 | 更新日期: 2023-09-27 18:31:37
class Game
{
byte[,] map = new byte[5, 5];
Player p;
public Game()
{
p = new Player();
}
public void Update()
{
p.Update();
}
}
class Player
{
public Player()
{
//init...
}
public void Update()
{
//this code needs map
}
}
如何在Player.Update()
到达Game
的map
?当然,最令人讨厌的解决方案是向Player.Update()
添加一个map
参数。但这种方式在我看来是错误的。我最近读了C++本书,知道了指针。我正在考虑在类中添加指向map
Player
指针并在Player.Update()
中使用它。我知道C#也有指针,但从未使用过它们。在这种情况下使用它们是好事吗?或者也许有更好的解决方案来解决这种情况而不涉及指针?我知道我在OOP方面很糟糕。
显然,您需要找出什么是引用类型以及什么是对象引用。这对于使用 C# 至关重要。由于两个类都是引用类型,因此使用该类型声明的所有变量都是对对象的引用。
您只需将Game
传递给Player.Update
即可传递对现有游戏的引用。