我有这个抽象类,我尝试用对象初始化字典 但有人不让我
public abstract class ICharacterBody3DState
{
public static Dictionary<StateInput, ICharacterBody3DState> State = new Dictionary<StateInput, ICharacterBody3DState>()
{
StateInput.sprint=new StateInput(),
};
}
每个状态都继承自这个抽象类:
public class WalkingState : ICharacterBody3DState
{
}
但它给了我: CS0747:无效的初始值设定项成员声明符。 有没有办法用对象初始化抽象类字典?
public abstract class ICharacterBody3DState
{
public static Dictionary<StateInput, ICharacterBody3DState> State = new Dictionary<StateInput, ICharacterBody3DState>()
{
{ StateInput.sprint, new StateInput() },
};
}
将每个键和值放在花括号
{}
内,并用comma
分隔它们。这是向字典添加项目的正确方法。