【发布时间】:2017-02-08 05:19:22
【问题描述】:
我在 Unity 工作,但我想这同样适用于 C#。
这是我做的一门课:
public class KeyboardInput
{
private string name;
private KeyCode btn;
public KeyboardInput(string buttonName, KeyCode button)
{
name = buttonName;
btn = button;
}
}
当我创建类的实例时,如果没有指定构造函数需要的值,会报错。
现在我想创建一个类的数组,我想指定值,但是如何?
如果不指定值,这似乎工作正常
public class InputController
{
private KeyboardInput[] defaultKeyBinding = new KeyboardInput[4];
public InputController()
{
for (int i = 0; i < defaultKeyBinding.Length; i++)
{
//Something inside here
}
}
}
我可以调整代码以便能够在 for 循环中设置值,但我很想知道是否有办法!
【问题讨论】:
-
你的意思是
defaultKeyBinding[i] = new KeyboardInput(string, KeyCode)? -
您应该为每个 KeyboardInput 数组项创建一个新实例。
-
我很困惑——你想在初始化数组时创建实例还是在构造函数中创建实例?构造函数需要的值从哪里来?你现在遇到什么样的错误?
标签: c# arrays class constructor instance