MQL5的未来是MQL5+甚至是MQL6 - 页 9 12345678910111213 新评论 Yury Reshetov 2016.01.23 16:31 #81 Mihail Matkovskij: 尽管有可能绕过它们,但问题是,既然在其他现代内核中没有这样的问题,为什么还要绕过呢? 其他现代语言有不同的做事方式。例如,在Java中,没有全局变量和常量,但可以使用已声明的类的静态变量 来代替。但这一点并没有改变,因为如果你指定了一个在不同类中重复的静态变量名称,编译器会要求澄清它所属的包和类的名称,因为编译过程没有心灵感应能力。课堂的情况也是如此。如果你指定了一个在不同包中重复的类或接口名称,编译器会再次要求你指定包的名称。 Igor Volodin 2016.01.24 16:50 #82 Mihail Matkovskij:虽然这个错误并不关键,但仍然很不方便。这不是一个错误,它更像是一个通知。有些语言甚至没有这类通知。本地范围内的东西与更高的东西重叠,那就这样吧。这就是它的本意。但在某些情况下,这样的警告是相当有用的。例如,在MQL中,全局变量 与之无关,我建议不要使用全局变量 也是不相关的。创建多个作用域。int OnInit() { int i = 10; { int i =5; { int i = 0; } } return(INIT_SUCCEEDED); }看吧,我们得到了两个警告。declaration of 'i' hides local declaration at line 3 declaration of 'i' hides local declaration at line 5 因此,结论是-- 1)无视此类警告 2) 避免在下面/上面的能见度区域使用相同的名称 3) 说服服务台删除这个无用的通知 Vasiliy Sokolov 2016.01.24 17:28 #83 Igor Volodin:3) 说服服务台删除这个无用的通知如果每个白痴都能说服服务台删除这个或那个规则,因为从他们的角度来看,这个规则是无用的,那么语言很快就会退化成原始的垃圾。 Vasiliy Sokolov 2016.01.24 17:33 #84 Mihail Matkovskij: 我的意思是,它怎么可能不被创造?任何编程语言都可以自由使用全局变量,这很好,但在这里,编译器发誓。虽然这个错误并不关键,但仍然很不方便。 可变点报告的是1个点的价格,是标准点的替代物。MarketInfo(EA_Symbol(), MODE_POINT)函数给出任何符号的1点价格。此外,变量点可以在任何函数中使用,在EA的主体中,如果它是一个全局变量,当然。同意这种情况经常造成一些不便(如果你肯定有MQL编程的经验)。虽然它们可以被避免,但问题是,如果在其他现代语言中根本不存在这样的问题,那么为什么呢? 变量点不能是一个全局变量。这是因为不同的符号的点价是不同的(尽管通常情况下,点价是一致的)。因此,点值只能在特定符号的特定EA交易中计算,不能以其他方式计算。 Renat Fatkhullin 2016.01.25 01:18 #85 不幸的是,只有有经验的程序员才明白这种警告的作用和重要性。好吧,我建议其他人对这种水平的编译器的帮助感到高兴,并修复自己的错误。这些都是真正的潜在错误的地方,正是对于新手开发者来说,学习是至关重要的。 agvozdezkiy 2016.01.25 05:56 #86 我想要一个颜色方案。不仅在编辑器中,而且在其他窗口中,这样就可以改变文字和背景颜色。当名称重合时,类成员数据不应该被染成实例变量的颜色。 Aleksei Kuznetsov 2016.01.25 09:44 #87 已经有好几次,在结束一天的工作并关闭程序窗口、浏览器等时,我不小心把在优化模式 下运行的MT5终端也关闭了。因此,所有的结果都丢失了。重启终端后,一切又重新开始。许多程序在你点击关闭一个窗口时,会问你是否确定要关闭它,未保存的数据可能会丢失。如果终端正在被优化,这样做是个好主意。 Mihail Matkovskij 2016.01.25 13:05 #88 Igor Volodin:这甚至不是一个错误,它更像是一个通知。有些语言甚至没有这类通知。局部地区的东西与更高层次的东西相重叠,所以很好。这就是它的本意。但在某些情况下,这样的警告是相当有用的。例如,在MQL中,全局变量 与之无关,我建议不要使用全局变量 也是无关的。创建多个作用域。看吧,我们得到了两个警告。因此,结论是。 1)无视此类警告 2)不在下面/上面的可视区域做相同的名字 3) 说服Servicedesk删除这个无用的通知好吧,在一个范围内有两个同名的变量是不好的,任何程序员都知道这一点。但问题是,这个范围包括标准模块,任何普通程序员都不会篡改这些模块,因为他/她不认为自己是开发者。删除警告也不是一种选择。不注意它们也是一种真正的不便,因为你可能没有注意到重要的警告。我认为这里有两种解决问题的方法。1.如果没有明确指定的话,让插件不看插件程序。2.如果开发者不愿意改变语法,可以为函数中的参数声明引入一条规则,类似于类的字段,例如,参数名称应该以i或i_开头(从字母表输入),从而固定标准模块中的所有参数 Renat Fatkhullin 2016.01.25 13:20 #89 编译器工作正常,这些警告也异常正确。只有一条出路:不允许有变数的重叠,不要试图用要求我们其他人尊重这种权利来维护犯错的权利。 Mihail Matkovskij 2016.01.25 21:27 #90 Renat Fatkhullin:编译器工作正常,这些警告也异常正确。只有一条出路:不允许有变数的重叠,不要试图用要求我们其他人尊重这种权利来维护犯错的权利。 你可能误解了我的意思。我没有向任何人要求什么,我只是就如何使MQL更加方便用户提出建议。 12345678910111213 新评论 您错过了交易机会: 免费交易应用程序 8,000+信号可供复制 探索金融市场的经济新闻 注册 登录 拉丁字符(不带空格) 密码将被发送至该邮箱 发生错误 使用 Google 登录 您同意网站政策和使用条款 如果您没有帐号,请注册 可以使用cookies登录MQL5.com网站。 请在您的浏览器中启用必要的设置,否则您将无法登录。 忘记您的登录名/密码? 使用 Google 登录
Mihail Matkovskij:
尽管有可能绕过它们,但问题是,既然在其他现代内核中没有这样的问题,为什么还要绕过呢?
虽然这个错误并不关键,但仍然很不方便。
这不是一个错误,它更像是一个通知。有些语言甚至没有这类通知。本地范围内的东西与更高的东西重叠,那就这样吧。这就是它的本意。但在某些情况下,这样的警告是相当有用的。
例如,在MQL中,全局变量 与之无关,我建议不要使用全局变量 也是不相关的。
创建多个作用域。
看吧,我们得到了两个警告。
因此,结论是--
1)无视此类警告
2) 避免在下面/上面的能见度区域使用相同的名称
3) 说服服务台删除这个无用的通知
3) 说服服务台删除这个无用的通知
如果每个白痴都能说服服务台删除这个或那个规则,因为从他们的角度来看,这个规则是无用的,那么语言很快就会退化成原始的垃圾。
我的意思是,它怎么可能不被创造?任何编程语言都可以自由使用全局变量,这很好,但在这里,编译器发誓。虽然这个错误并不关键,但仍然很不方便。
可变点报告的是1个点的价格,是标准点的替代物。MarketInfo(EA_Symbol(), MODE_POINT)函数给出任何符号的1点价格。此外,变量点可以在任何函数中使用,在EA的主体中,如果它是一个全局变量,当然。同意这种情况经常造成一些不便(如果你肯定有MQL编程的经验)。虽然它们可以被避免,但问题是,如果在其他现代语言中根本不存在这样的问题,那么为什么呢?
不幸的是,只有有经验的程序员才明白这种警告的作用和重要性。
好吧,我建议其他人对这种水平的编译器的帮助感到高兴,并修复自己的错误。这些都是真正的潜在错误的地方,正是对于新手开发者来说,学习是至关重要的。
我想要一个颜色方案。不仅在编辑器中,而且在其他窗口中,这样就可以改变文字和背景颜色。
当名称重合时,类成员数据不应该被染成实例变量的颜色。
已经有好几次,在结束一天的工作并关闭程序窗口、浏览器等时,我不小心把在优化模式 下运行的MT5终端也关闭了。因此,所有的结果都丢失了。重启终端后,一切又重新开始。
许多程序在你点击关闭一个窗口时,会问你是否确定要关闭它,未保存的数据可能会丢失。
如果终端正在被优化,这样做是个好主意。
这甚至不是一个错误,它更像是一个通知。有些语言甚至没有这类通知。局部地区的东西与更高层次的东西相重叠,所以很好。这就是它的本意。但在某些情况下,这样的警告是相当有用的。
例如,在MQL中,全局变量 与之无关,我建议不要使用全局变量 也是无关的。
创建多个作用域。
看吧,我们得到了两个警告。
因此,结论是。
1)无视此类警告
2)不在下面/上面的可视区域做相同的名字
3) 说服Servicedesk删除这个无用的通知
好吧,在一个范围内有两个同名的变量是不好的,任何程序员都知道这一点。但问题是,这个范围包括标准模块,任何普通程序员都不会篡改这些模块,因为他/她不认为自己是开发者。删除警告也不是一种选择。不注意它们也是一种真正的不便,因为你可能没有注意到重要的警告。
我认为这里有两种解决问题的方法。
1.如果没有明确指定的话,让插件不看插件程序。
2.如果开发者不愿意改变语法,可以为函数中的参数声明引入一条规则,类似于类的字段,例如,参数名称应该以i或i_开头(从字母表输入),从而固定标准模块中的所有参数
编译器工作正常,这些警告也异常正确。
只有一条出路:不允许有变数的重叠,不要试图用要求我们其他人尊重这种权利来维护犯错的权利。
编译器工作正常,这些警告也异常正确。
只有一条出路:不允许有变数的重叠,不要试图用要求我们其他人尊重这种权利来维护犯错的权利。