模板参数=void*的编译器错误 - 页 4 1234567891011...20 新评论 Алексей Тарабанов 2018.12.20 01:00 #31 Dmitry Fedoseev:你有没有试着阅读你给我们的链接?斯拉瓦在那里通俗地解释了为什么会这样--因为在旧的MQL4中,优先权被混淆了。因此,现在重要的是吸引注意力。只有一个警告也不好,如果有一个错误就更好了。或者,一记耳光打在脸上 A100 2018.12.20 01:11 #32 Dmitry Fedoseev:你有没有试着阅读你给我们的链接?斯拉瓦在那里通俗地解释了为什么会这样--因为在旧的MQL4 中,优先权被混淆了。因此,现在重要的是吸引注意力。只有一个警告也不好,如果有一个错误就更好了。那么?在这里。 int i = 1 << 2 + 3; 此外,在MQL4中,优先级也被混为一谈?这是关于一般的方法,而不是特殊的情况。在特殊情况下, ,你 可以给出一个警告/错误(作为例外),但为什么要扩大到其他一切呢? 此外,在MQL4中(据我所知),让我们说||操作符没有懒惰性。尽管这样,MQL5编译器在类似的情况下并没有产生警告(它并不建议将||分成几个原子操作)。 由此可见,历史的相应一页是颠倒的 A100 2018.12.20 01:51 #33 我想在此补充一下... 连文件 都说。 "为了改变 操作的顺序,使用括号,它具有最高的优先权"。 这意味着为其他目的(与改变顺序无关)使用括号仍必须有正当理由 A100 2018.12.20 02:07 #34 fxsaber:我想知道,当人们应该犹豫不决时,程序员人数的门槛在哪里?5是不够的。1,000是不够的。10,000 - 犹豫不决。然后最后是N--信任。然而,当它是(N-1)--我还不相信它。阈值不是以绝对值 来定义的,而是以占认为相反的人数的百分比来定义的。大多数人可能是错的,但不是99%是一个可靠的标准 Alexey Navoykov 2018.12.20 02:52 #35 A100: 而在1961x32中,一切都很正常......耶!嗯,有趣的功能。从现在开始,我也会指定平台的比特率 Alexey Navoykov 2018.12.20 03:34 #36 A100:那么?在这里。 int i = 1 << 2 + 3; 在MQL4中,优先级也被混淆了? 是的,文档中 说,旧版本的优先级是不同的。 但在我看来,这一切早已变得无关紧要了。而且,如果指定了严格指令,就更应该如此。而且,如果有人挖出古老的代码并试图编译它,无论如何,他/她将不得不在那里重做很多事情。所以这些警告是过去的遗物。这就是为什么我同意,你不应该在真空中抛出警告。 Ilya Malev 2018.12.20 04:26 #37 对不起,如果你知道,除了(int)StringFormat("%i",ptr)之外,在mql中是否有办法从void*ptr获得int? fxsaber 2018.12.20 05:36 #38 A100:所以在你的代码中,方括号并不意味着什么,声明...似乎不符合逻辑,而且在括号的情况下,我们需要了解优先级/顺序是否真的改变了,而在我的代码中,括号本身就意味着优先级/顺序的改变(括号的存在/不存在使一切都很清楚)。 支架fxsaberA100有难以理解 的 业务的优先次序被颠倒不操作的优先级没有改变行动的优先次序没有改变括号使表达式完全不含糊。 警告本身(不仅是关于括号的)不是告诉我们错误,而是告诉我们有可能发生错误。但你建议完全摆脱所有的警告,因为优先级(不仅是用括号)在编译器中明确规定。 A100:阈值不是以绝对值 来定义的,而是以认为不合适的人数的百分比比例来定义的。大多数可能是错的,但不是99%是一个可靠的标准 同样的问题,关于这个数字不是绝对的,而是相对的。98%是一个可靠的标准吗?А 97%?当你不得不开始怀疑可靠性时,那个门槛在哪里?即使你周围的人100%声称你是一个杀人狂。这是一个可信的标准吗? Igor Makanu 2018.12.20 06:14 #39 Ilya Malev: 对不起,离题了,如果有人知道,可以告诉我:在mql中,除了(int)StringFormat("%i",ptr)之外,有没有办法从void*ptr获取int?只通过字符串,我曾经通过StringConcatenate() 获得指针地址,像这样。 Cinteger *x = new Cinteger(); string s; int zz=StringConcatenate(s,"*x = ",x); Print("OK ",s); pavlick_ 2018.12.20 06:20 #40 Alexey Navoykov:最微不足道的例子是数组类。 在这种情况下,它被用来存储任何指针。 坦率地说,这种阵列的用途令人怀疑。你能用它做什么?你知道你不会为数组成员自动调用删除,对吗? 1234567891011...20 新评论 原因: 取消 您错过了交易机会: 免费交易应用程序 8,000+信号可供复制 探索金融市场的经济新闻 注册 登录 拉丁字符(不带空格) 密码将被发送至该邮箱 发生错误 使用 Google 登录 您同意网站政策和使用条款 如果您没有帐号,请注册 可以使用cookies登录MQL5.com网站。 请在您的浏览器中启用必要的设置,否则您将无法登录。 忘记您的登录名/密码? 使用 Google 登录
你有没有试着阅读你给我们的链接?斯拉瓦在那里通俗地解释了为什么会这样--因为在旧的MQL4中,优先权被混淆了。因此,现在重要的是吸引注意力。只有一个警告也不好,如果有一个错误就更好了。
或者,一记耳光打在脸上
你有没有试着阅读你给我们的链接?斯拉瓦在那里通俗地解释了为什么会这样--因为在旧的MQL4 中,优先权被混淆了。因此,现在重要的是吸引注意力。只有一个警告也不好,如果有一个错误就更好了。
那么?在这里。
此外,在MQL4中,优先级也被混为一谈?这是关于一般的方法,而不是特殊的情况。在特殊情况下, ,你 可以给出一个警告/错误(作为例外),但为什么要扩大到其他一切呢?
此外,在MQL4中(据我所知),让我们说||操作符没有懒惰性。尽管这样,MQL5编译器在类似的情况下并没有产生警告(它并不建议将||分成几个原子操作)。
由此可见,历史的相应一页是颠倒的
我想在此补充一下... 连文件 都说。
"为了改变 操作的顺序,使用括号,它具有最高的优先权"。
这意味着为其他目的(与改变顺序无关)使用括号仍必须有正当理由
我想知道,当人们应该犹豫不决时,程序员人数的门槛在哪里?5是不够的。1,000是不够的。10,000 - 犹豫不决。然后最后是N--信任。然而,当它是(N-1)--我还不相信它。
阈值不是以绝对值 来定义的,而是以占认为相反的人数的百分比来定义的。大多数人可能是错的,但不是99%是一个可靠的标准
而在1961x32中,一切都很正常......耶!
嗯,有趣的功能。从现在开始,我也会指定平台的比特率
那么?在这里。
在MQL4中,优先级也被混淆了?
是的,文档中 说,旧版本的优先级是不同的。
但在我看来,这一切早已变得无关紧要了。而且,如果指定了严格指令,就更应该如此。而且,如果有人挖出古老的代码并试图编译它,无论如何,他/她将不得不在那里重做很多事情。所以这些警告是过去的遗物。这就是为什么我同意,你不应该在真空中抛出警告。
所以在你的代码中,方括号并不意味着什么,声明...似乎不符合逻辑,而且在括号的情况下,我们需要了解优先级/顺序是否真的改变了,而在我的代码中,括号本身就意味着优先级/顺序的改变(括号的存在/不存在使一切都很清楚)。
括号使表达式完全不含糊。
警告本身(不仅是关于括号的)不是告诉我们错误,而是告诉我们有可能发生错误。但你建议完全摆脱所有的警告,因为优先级(不仅是用括号)在编译器中明确规定。
阈值不是以绝对值 来定义的,而是以认为不合适的人数的百分比比例来定义的。大多数可能是错的,但不是99%是一个可靠的标准
同样的问题,关于这个数字不是绝对的,而是相对的。98%是一个可靠的标准吗?А 97%?当你不得不开始怀疑可靠性时,那个门槛在哪里?即使你周围的人100%声称你是一个杀人狂。这是一个可信的标准吗?
对不起,离题了,如果有人知道,可以告诉我:在mql中,除了(int)StringFormat("%i",ptr)之外,有没有办法从void*ptr获取int?
只通过字符串,我曾经通过StringConcatenate() 获得指针地址,像这样。
最微不足道的例子是数组类。 在这种情况下,它被用来存储任何指针。
坦率地说,这种阵列的用途令人怀疑。你能用它做什么?你知道你不会为数组成员自动调用删除,对吗?