如何在MQL4/MQL5中获得枚举和项目的长度? - 页 3 12345 新评论 Alain Verleyen 2016.05.10 07:01 #21 Andrey Barinov:不,使用数组而不是枚举是一个糟糕的设计。举个例子。想象一下,你有一个字符串值。任务是找出这个字符串是否等于/包含其中的一个枚举项的名称(EnumToString())。 你将如何解决这个问题? 你能提供一个需要这样做的真实情况吗?枚举只是常量,你为什么要在这些项目中识别一个字符串? Marco vd Heijden 2016.05.10 07:13 #22 Alain Verleyen: 你能提供一个需要这种东西的真实情况吗?Enum只是常量,你为什么要在这些项目中识别一个字符串? enum hedge { AUD=0,//Australian Dollar CAD=1,//Canadian Dollar CHF=2,//Swiss Franc JPY=3,//Japan Yen EUR=4,//European Euro };如果你想建立起一个对冲结构。但是,我只是简单地比较一下,发现实际价值。sinput hedge C1=2;// Hedge Currency if(C1=="CAD") { //Do Something } Andrey Barinov 2016.05.10 07:14 #23 Alain Verleyen: 你能提供一个需要这种东西的真实情况吗?Enum只是常量,为什么你要在项目中识别一个字符串? 我的问题只是一个例子。话题启动者描述了另一个例子。我明白这些问题对你来说不够 "真实",每个人都可以使用变通方法,但这并不意味着这些任务对正在解决这些问题的人来说不真实。 Alain Verleyen 2016.05.10 07:23 #24 Andrey Barinov: 我的问题只是一个例子。话题启动者描述了另一个例子。我明白这些问题对你来说不够 "真实",每个人都可以使用变通的方法,但这并不意味着这些任务对正在解决它们的人来说不真实。 而我们仍然被困在这里...只有在真正的问题上才能找到解决方案。你知道OP的真正问题是什么吗?我不知道。 Marco vd Heijden 2016.05.10 07:29 #25 我也没有。我已经问过他好几次了。 Andrey Barinov 2016.05.10 07:31 #26 Alain Verleyen: 而我们仍然被困在这里...只有在真正的问题上才能找到解决方案。你是否知道这个问题的实质?我不知道。我知道在许多真实的情况下,这将是有帮助的。这就是为什么我使用数组的方法,因为没有其他方法。例子。你有一个东西的枚举/列表(比方说你程序的GUI语言选项),你想为它建立单选按钮,供用户选择。如果你改变了枚举中的项目数量,你不希望以后再改变按钮的代码。你需要从按钮的名称中获取枚举值来应用于你的程序。你不希望为枚举中的每一项写代码,你希望在一个周期内有一个简单的解决方案。这不仅可以应用于语言,还可以应用于许多其他事物。 Marco vd Heijden 2016.05.10 07:43 #27 有很多方法可以做同样的事情。 Andrey Barinov 2016.05.10 07:47 #28 Marco vd Heijden: 有很多方法可以做同样的事情。嗯,我至少知道一个,因为我正在使用它。而这并不意味着我们所讨论的功能是无用的。你可以用石头敲打钉子,但这并不意味着你应该总是这样做。 Alain Verleyen 2016.05.10 07:47 #29 Andrey Barinov:我知道在许多真实的情况下,这将是有帮助的。这就是为什么我使用数组的方法,因为没有其他方法。1.你有一个枚举/列表的东西(比方说你的程序的GUI语言选项),你想为它建立单选按钮,供用户选择。如果你改变了枚举中的项目数量,你不希望以后再改变按钮的代码。你需要从按钮的名称中获取该枚举值来应用你的程序。你不希望为枚举中的每一项写代码,你希望在一个周期内有一个简单的解决方案。这不仅可以应用于语言,还可以应用于许多其他事物。我知道Andrey。你的例子需要一个动态的解决方案,所以你不使用枚举而使用数组。如果你想用枚举(静态)来处理动态的东西(你的例子),这是一个糟糕的设计。在我看来,我们说的是一样的。我们无法帮助OP,因为他没有说他为什么需要循环。 Ex Ovo Omnia 2016.05.10 07:57 #30 Andrey Barinov:嗯,我至少知道一个,因为我正在使用它。而这并不意味着我们所讨论的功能是无用的。你可以用石头敲打钉子,但这并不意味着你应该总是这样做。甚至Java语言在很长时间内都没有任何枚举类型,而且由于Java很少使用纯数组,有许多其他的OO方式来迭代一个值的列表。我不会说这是石头和钉子。 12345 新评论 您错过了交易机会: 免费交易应用程序 8,000+信号可供复制 探索金融市场的经济新闻 注册 登录 拉丁字符(不带空格) 密码将被发送至该邮箱 发生错误 使用 Google 登录 您同意网站政策和使用条款 如果您没有帐号,请注册 可以使用cookies登录MQL5.com网站。 请在您的浏览器中启用必要的设置,否则您将无法登录。 忘记您的登录名/密码? 使用 Google 登录
不,使用数组而不是枚举是一个糟糕的设计。
举个例子。想象一下,你有一个字符串值。任务是找出这个字符串是否等于/包含其中的一个枚举项的名称(EnumToString())。
你将如何解决这个问题?
你能提供一个需要这种东西的真实情况吗?Enum只是常量,你为什么要在这些项目中识别一个字符串?
如果你想建立起一个对冲结构。
但是,我只是简单地比较一下,发现实际价值。
你能提供一个需要这种东西的真实情况吗?Enum只是常量,为什么你要在项目中识别一个字符串?
我的问题只是一个例子。话题启动者描述了另一个例子。我明白这些问题对你来说不够 "真实",每个人都可以使用变通的方法,但这并不意味着这些任务对正在解决它们的人来说不真实。
而我们仍然被困在这里...只有在真正的问题上才能找到解决方案。你是否知道这个问题的实质?我不知道。
我知道在许多真实的情况下,这将是有帮助的。这就是为什么我使用数组的方法,因为没有其他方法。
例子。你有一个东西的枚举/列表(比方说你程序的GUI语言选项),你想为它建立单选按钮,供用户选择。如果你改变了枚举中的项目数量,你不希望以后再改变按钮的代码。
你需要从按钮的名称中获取枚举值来应用于你的程序。你不希望为枚举中的每一项写代码,你希望在一个周期内有一个简单的解决方案。
这不仅可以应用于语言,还可以应用于许多其他事物。
有很多方法可以做同样的事情。
嗯,我至少知道一个,因为我正在使用它。
而这并不意味着我们所讨论的功能是无用的。你可以用石头敲打钉子,但这并不意味着你应该总是这样做。
我知道在许多真实的情况下,这将是有帮助的。这就是为什么我使用数组的方法,因为没有其他方法。
1.你有一个枚举/列表的东西(比方说你的程序的GUI语言选项),你想为它建立单选按钮,供用户选择。如果你改变了枚举中的项目数量,你不希望以后再改变按钮的代码。
你需要从按钮的名称中获取该枚举值来应用你的程序。你不希望为枚举中的每一项写代码,你希望在一个周期内有一个简单的解决方案。
这不仅可以应用于语言,还可以应用于许多其他事物。
我知道Andrey。你的例子需要一个动态的解决方案,所以你不使用枚举而使用数组。如果你想用枚举(静态)来处理动态的东西(你的例子),这是一个糟糕的设计。在我看来,我们说的是一样的。
我们无法帮助OP,因为他没有说他为什么需要循环。
嗯,我至少知道一个,因为我正在使用它。
而这并不意味着我们所讨论的功能是无用的。你可以用石头敲打钉子,但这并不意味着你应该总是这样做。
甚至Java语言在很长时间内都没有任何枚举类型,而且由于Java很少使用纯数组,有许多其他的OO方式来迭代一个值的列表。我不会说这是石头和钉子。