【发布时间】:2014-01-08 21:41:07
【问题描述】:
在 C# 中,如果您在单击按钮时创建对象,则在单击事件结束时,该对象不再在范围内。如何在单击按钮时创建对象,但在单击另一个按钮时释放它。这是我想要做的:
构建一个接受用户数据并将其添加到数据库的应用程序。该应用程序包含两类:个人信息和雇主信息。个人信息类对象应在按下“开始应用程序”按钮时创建。然后,该应用程序会打开一个请求个人信息的选项卡。如果选择了“添加雇主”按钮,则会创建一个雇主实例。他们最后按下提交后,它应该关闭一两个对象并返回主菜单。当下一个人按下按钮时,它应该再次执行该过程。
我可以在单击时或在类本身中创建对象,但是如何限制对象在两次按下按钮之间的寿命?
谢谢!
【问题讨论】:
-
你需要在你的类中添加一个字段。
-
如果个人信息有一个属性(或字段)称为雇主,您可以在单击第二个按钮时设置该数据。
-
仅供参考“对象”不是“范围内”或“超出范围”。 “范围”是一个纯粹的编译时属性;命名实体的范围是程序文本的区域,在该区域中该实体可以被该名称引用。您的问题实际上是关于 lifetime,它与范围有关,因为其最后一个引用保存在局部变量中的对象的生命周期长于、短于或等于该范围的范围多变的。如果您仔细阅读并想知道我刚才是否说过范围和生命周期实际上是不相关的,那是正确的。