重新创建新对象

时间:2012-05-29 15:24:08

标签: c# class object instance

所以我有一个很容易解决(我认为)的问题。 我正在做一些迷你游戏,比方说我有游戏1,游戏2,游戏3。 我可以开始游戏1然后完成后我可以从头开始游戏。 问题是当我做游戏时再次开始游戏时game1 = new Game1();它不是从0开始,有些对象已经与game1对齐,所以我显然会出错。

澄清一点: 用户选择:Game1,Game2,Game3 - >他选择了Game1 - > CreateGame1(); - > game1 = new Game1(); 用户完成游戏并选择再次进入游戏:CreateGame1() - > game1 = new Game1();这是问题所在。 game1在我的课程开头定义为Game1 game1;

有没有简单的方法可以解决这个问题,还是应该手动删除所有项目? 提前谢谢!

4 个答案:

答案 0 :(得分:4)

我认为您有一些静态属性,其值在创建新对象时不会重置。我没有看到这个问题的其他原因。无论如何,由于你没有发布你的代码,所以很难准确地回答这个问题。

答案 1 :(得分:0)

您是否在Game类中使用静态字段?

创建类的新实例时,将初始化所有非静态字段。但静态字段不是每个实例,因此它们保持其值。

答案 2 :(得分:0)

如果您正在使用静态字段,请记住这些是“类级别”,并且在创建新实例时不会“重置”。

答案 3 :(得分:0)

我认为我很误解,因为创建一个新实例应该清除任何不定义的或构造函数或静态

如果我错过了这一点,那么请尝试查看iDisposable