假设您有某种控制台应用程序游戏,并且在游戏中您创建了一个对象,该对象将具有它自己的类。当游戏可能仍在运行时,您将如何使用诸如方法或函数之类的东西创建该类的实例。
我浏览了整个互联网,几周后没有找到任何东西。通常,我会为该类创建一个数组并像这样向它添加新实例。
class MyClass
{
//fields and methods
}
class Program
{
static void Main(string[] args)
{
MyClass[] myClasses = new MyClass[16];
myClasses.SetValue(new MyClass(), 0);
}
}
但这感觉笨重且效率低下。我希望我能尽快解决这个问题。
有很多方法可以做到这一点。最常见和接受的方式可能是FactoryPattern
.
创建你的工厂:
public static class MyClassFactory
{
public static MyClass CreateNew() {
return new MyClass();
}
public static MyClass[] CreateRange(int amount) {
var myArr = new MyClass[amount];
for (int i = 0; i < amount; i++)
{
myArr[i] = new MyClass();
}
return myArr;
}
}
然后只需在您的代码中调用它:
class Program
{
static void Main(string[] args)
{
MyClass[] myClasses = MyClassFactory.CreateRange(16);
}
}
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句