错误、漏洞、问题 - 页 251

 
Yedelkin:

但不要忘记,该语言是由新手程序员开始使用的,他们不熟悉默认值、函数重载、编译器问题、在某些情况下强制指定四个参数等微妙问题。新手(包括我自己)用帮助文本工作,这是可用的,并尽量不要猜测他们不知道的东西。例如,如果你的所有台词都反映在《参考资料》中,我和Lizar 一开始就不会有问题。

在文档中,有一个函数重载 部分,其中指出。

编译器根据参数的类型数量 来选择正确的函数。进行这种选择的规则被称为签名匹配算法。签名指的是函数声明中使用的类型列表。

...

重载是为一个函数赋予多个值的做法。对一个特定值的选择取决于函数所收到的参数类型。当函数声明中的参数列表被调用时,根据参数列表的一致性来选择具体的函数。

当一个重载函数被调用时,编译器必须有一个算法来选择合适的函数。 进行这种选择的算法取决于有哪些类型转换。最好的匹配必须是独一无二的。它必须至少在一个论点上是最好的,并且在所有其他论点上与其他的匹配物一样好。

下面是每个参数的匹配算法。

选择重载函数的算法

  1. 使用严格的匹配(如果可能的话)。
  2. 试试标准类型的增加。
  3. 试着进行标准的类型转换。
 
alexluek:

是的,在图片中,而且你可以选择任何服务器(从标准的服务器中选择)。

我离开终点站3个小时,M5,我回来了,只有价格跳动,没有

我在3点钟离开M5航站楼,我回来时只有价格在跳动,但没有酒吧。我重新启动了终端,只有这3个小时的条形图。

我今天用mt5 ticket 373(来自论坛)安装了终端。

https://download.mql5.com/cdn/web/metaquotes.software.corp/mt5/mt5setup.exe

还有一件事--也许是我闪失了,但当你选择一个新的图表时。

没有更新,重启终端后出现条形图。图3

就这样,价格线这样运行,直到你重新启动它。唯一出现的条形图是

自该终端推出以来,出现了一些问题。也许我做错了什么。

但我重新安装了3次,并尝试删除带引号的文件

它仍然不会更新。

请附上终端日志。
 
Rosh:

在关于函数重载 的文档中,有一节是这样说的。

你的回答很专业,谁能从外观上看出一个功能的性质。试着从一个非专业人士的角度来看待同一个问题。

......我引用了《手册》中的一个明确声明,根据该声明,"大多数属性不需要子窗口号码"。并解释了这种措辞导致的结果。我提出要在《手册》的一个具体章节中作出具体的澄清。相反,你让我去看论坛中的函数重载部分。同时(从初学者的角度来看),ChartGetInteger() 函数的描述中并没有说到重载

当然,我在一段时间前就读过关于函数重载的文章。而我的结论是,我不会为自己创建重载函数(不会遇到问题)。我从来没有想过,在ChartGetInteger()的情况下,我们必须谈论函数重载,因为只有专业人士才能一下子说出这一点

因此,我将再次重申:非专业人员在工作中使用存在的帮助文本(我想补充的是:与具体功能有关),并尽量不要猜测他们不知道的东西。如果你坚持认为《手册》中有 "函数重载 "一节,并且这一节解决了所有的问题,我建议进行下一步:在特定函数ChartGetInteger() 的帮助文本中反映该函数可重载的信息,以及它可能产生的后果尽管在我看来,在《参考》中更容易做出我在前面第5段中提到的内容。

要补充的是。我的眼界开阔了,所以这个问题对我来说已经解决了。谢谢你,现在我说的是要确保其他非专业人员不踩到同一个耙子。这就是全部。这取决于开发者是否能让事情保持原样--那么今天的讨论就会在论坛中消失,而新手们就会只剩下对具体功能的原样描述。

 
antt:
请附上终端日志。

我很抱歉在不需要的时候删除了它。我不知道是什么原因

但它在Alpari上是有效的,也许有人应该试试

使用论坛上的链接 "mt5更新 "进行安装。

谢谢你的帮助--祝你好运

 
alexluek:

但在Alpari上一切正常,也许有人应该自己试试。

我不知道现在的情况,但直到夏天结束时,Alpari还有过时的构建。我现在不知道,但直到夏天结束时,Alpari还有过时的构建。
 
Yedelkin:
我不知道现在的情况,但直到夏天结束时,Alpari还有过时的构建。也就是说,他们的更新被推迟了2-4周。

你应该为这里下载的终端注册一个Alpari账户,然后就会清楚哪里的条形图没有更新,以及这是否是终端的故障。

作为参考,Alpari服务器住在这里 - 62.213.101.242:443

耶德尔金

4.上面的例子表明,第三个参数(sub_window)必须始终为该函数的第二个变体指定,即使该属性本身不需要一个子窗口号码。也就是说,该函数的第二个变体(既可以用两个参数,也可以用三个参数)总是 需要全部四个参数。对吗?

5.如果正确的话,我们已经发现了两件事。首先,我原来的问题版本已被证明是错误的。其次,造成这种错误版本的原因是《手册》中的信息不完整。因此,我建议在《手册》中澄清:"第二个选项没有默认值,所以必须始终指定子窗口编号。对于大多数不需要子窗口号的属性,需要指定0(主图表窗口)"。或者类似这样的事情。


4.第二个变体需要所有四个参数(与第一个变体不同)。正如我们之前发现的那样。

5.该手册需要澄清,需要更多的交叉引用和更多的例子。

PS

我还建议开发者至少在在线版本的目录中增加这样的模块

关于这个主题的文章/也见。

1. ........................................................

2. ........................................................

3. ........................................................

 
Interesting:

我还建议开发者至少在网络版的手册中加入以下内容

关于此主题的文章/还请参见。

1. ........................................................

2. ........................................................

3. ........................................................

我完全同意。然而,我们必须考虑到这将需要额外的费用:时间、劳动力等。

...如果为指南的在线版本提供一个块,任何人(文章的作者,论坛上的问题的作者)都可以输入网站主题的现有材料的链接呢?对版主来说,删除左边的链接比跟踪新文章/主题要容易得多。而且我们将有机会与 "后代 "分享这些知识:)

 
!
Interesting:

你应该为这里下载的终端注册一个Alpari账户,然后就会清楚哪里的条形图没有更新,以及这是否是终端的故障。

作为参考,Alpari服务器住在这里 - 62.213.101.242:443

我想取消这个主题的订阅 - 在账户注册表中输入这些服务器参数

(并规定了约15个不同的类似62.213.101.242:443和这个也顺便说一下)

我总是得到同样的结果(Mt5 373)--不要注册新的模拟账户

也许我做错了什么,如果有人有类似的东西,你也可以创建一个应用程序!

Документация по MQL5: Стандартные константы, перечисления и структуры / Состояние окружения / Информация о счете
Документация по MQL5: Стандартные константы, перечисления и структуры / Состояние окружения / Информация о счете
  • www.mql5.com
Стандартные константы, перечисления и структуры / Состояние окружения / Информация о счете - Документация по MQL5
 
alexluek:
!

想退订主题 - 在账户注册中输入这些服务器参数

(并规定了约15个不同的类似62.213.101.242:443和这个也顺便说一下)

我得到了同样的结果(Mt5 373)--没有注册新的模拟账户

也许我也做错了什么,如果有人有类似的东西,你也可以创建一个应用程序!

他们说用图片来解释会更好。我将尝试...

这就是我们在阿尔卑斯山上注册一个新账户的方法

1.添加一个服务器到列表中。


2.添加一个新账户


登录一个现有的账户。


 
Interesting:

他们说图片能更好地解释事情。我试试...

所以我们要在阿尔卑斯山上注册一个新账户

1.我们将服务器添加到列表中。


2.添加一个新账户


登录一个现有的账户。


好吧,至少你得到了一个扫描,但我得到的是不适用。

在所有Alpari服务器上的输入,我将尝试你的。

(例如148.58,....)