我必须找到动态创建对象的方法,这意味着用户可以决定在程序启动后要创建多少个对象。我试图做的是:创建动态对象(Eiffel)
if count = 6 then
create player1.player
create player2.player
create player3.player
create player4.player
create player5.player
create player6.player
elseif count > 4 then
create player1.player
create player2.player
create player3.player
create player4.player
create player5.player
elseif count > 3 then
create player1.player
create player2.player
create player3.player
create player4.player
elseif count > 2 then
create player1.player
create player2.player
create player3.player
else
create player1.player
create player2.player
end
一旦用户choosen的玩家数量,变量count更新,并且创建该对象的功能被调用。
我使用了这种蛮力方法,而不是循环,因为我需要对象的“名称”,我必须在程序中再次调用它们。
反正编译器给了我一个VEVI错误,变量没有正确设置。 有些帮助?
非常感谢您的回答,但您能否告诉我是否有更有效的方法来执行此操作?是否可以使用列表和循环,而不是使用if语句? – DevX10
@Ergo,当然,您可以将值存储在容器中,例如,在'ARRAYED_LIST [PLAYER]'中。您将创建容器对象,然后根据需要放入尽可能多的播放器对象。顺便说一句,在这种情况下''可拆卸'标记将不需要。(如果需要,我可以延长我的答案,并提供更多详细信息。) –
感谢并为最近的答案感到遗憾,但我会对容器有更多的了解。为什么不可拆卸需要。 – DevX10