我正在寻找在另一个类中更改变量值的最佳编程实践。
例如,如果我有一个布尔值来确定一个敌人是否面向左边,那么最好的方法是什么呢?
A
*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;
}
另外,我已经读过你应该避免一起使用全局变量,但是你应该在这种情况下使用它,因为它在类中的多个函数中使用,对吗?
答案 0 :(得分:0)
使用枚举,您可以采用其设置方式(我们需要了解实施细节以提供具体建议)。
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();