全局变量Vs.集合函数
本文关键字:函数 集合 Vs 全局变量 | 更新日期: 2023-09-27 18:03:42
我正在寻找在另一个类中更改变量值的最佳编程实践。
例如,如果我有一个布尔值来确定敌人是向左还是向右,那么最好的方法是什么?
*outside of Class*
Class.Right = false;
*inside of Class*
public Right = true;
*outside of Class*
Class.setRight(false);
*inside of Class*
private Right = true;
public void setRight (right) {
Right = right;
}
另外,我读到你应该避免一起使用全局变量,但你应该在这种情况下使用它,因为它在类中的多个函数中使用,对吗?
使用枚举,您可以选择如何设置它(我们需要知道实现的细节以提供特定的建议)。
public enum DirectionType{ Right, Left };
public class Enemy
{
public DirectionType Direction{ get; set; }
public void HoneInOnHero()
{
//Hero's function can help determine position relative to the enemy.
this.Direction = Hero.GetRelativeDirection(this);
}
}
var enemy = new Enemy();
enemy.Direction = DirectionType.Left;
//or...
if(attackMode)
enemy.HoneInOnHero();