我有三个多态类。根据用户输入,类应该设置为该用户的输入。所以子类由用户决定,应该为'class = new inputClass'。代码片段如下所示:
public void characterGeneration(string classSelected)
{
foreach (string classInList in classes.ClassList)
{
if (classSelected == classInList)
{
PlayerOneStats = new Mage();
}
}
PlayerOneStats.generateStats();
}
它说 PlayerOneStats = new Mage();
,我希望 Mage()
成为用户输入。
我查看了 Activator、Assembly,使用 Type,试图转换到 GenerateStats
的父级,但没有任何效果。我发现很多人说它有效,但有一个链接说它无效。有人可以帮我解决这个问题吗?非常感谢!
最佳答案
您确定 Activator 不起作用吗? Activator.CreateInstace("assembly-name", "type-name")
看起来正是您想要的。什么不起作用?
关于c# - 使用字符串变量设置 'Class = new <string of Class()>',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8302934/