我正在尝试编写一个代码,以在使用所述功能之前读取对象的对象属性。在这种情况下,它将读取技能的冷却时间,然后在冷却时间等于零时施放该技能。但是,如果没有遇到错误,我将无法运行代码。它不会让我访问该属性。
public class Pug : Dogs
{
public Pug()
{
ability bark = new Ability();
bark.cooldown = 2;
}
public void PugBark()
{
if (bark.cooldown == 0)//error occurs on this line
{
//He Barks
}
}
}
答案 0 :(得分:3)
由于您的bark
对象是构造函数范围中唯一可用的对象。
我认为您可以尝试让bark
成为Pug
类中的字段或属性
public class Pug : Dogs , ThingsDogsDo
{
private Ability bark;
public Pug()
{
bark = new Ability();
bark.cooldown = 2;
}
public void PugBark()
{
if (bark.cooldown == 0)//error occurs on this line
{
//He Barks
}
}
}