【发布时间】:2014-01-25 05:09:21
【问题描述】:
class Person
{
//Default Constructor
public Person()
{
name_private = "";
attr_private = 0.0;
}
//Overloaded Constructor
public Person(string name, double attr)
{
name_private = name;
attr_private = attr;
}
//Member Variables
private string name_private;
private double attr_private;
}
/////////////////////////////////////// //////////////////////////////////p>
private void createPersonBox_Click(object sender, EventArgs e)
{
Object obj = Activator.CreateInstance<Person>();
//Person person_1 = new Person();
}
/////////////////////////////////////// ///////////////////////////////
当有人按下创建人员按钮时,如何创建人员类的实例。我不想将类的实例命名为像 person_1 这样的通用名称,而是希望实例的名称是顶部文本框中的文本。我已阅读有关 Activator.CreateInstance 的 MSDN 文章,并确定这是实现此目的的最佳方法。但是我不知道如何正确超载它。我需要能够将类的实例作为人名而不是 obj 引用。
简单是这里的目标。
【问题讨论】:
-
您不能动态设置实例名称。为什么实例名称对您如此重要???
-
如果每次按下按钮,实例都会被覆盖,我还能如何区分对象。
-
我想理解你的意思,你想创建一个 Person 实例并将它的
name字段设置为 textBox1.text 吗? -
这正是我的意思,我只是不知道如何正确表达它
标签: c# winforms class oop activator