错误、漏洞、问题 - 页 2333

 
Vladimir Pastushak:

bool file_exists=(bool)FileGetInteger(FileName,FILE_EXISTS)。

在任何情况下,如果有文件或没有文件,它将返回true,如果没有文件,则返回错误5019。根据帮助,如果没有文件,它应该返回false。

bool file_exists=FileIsExist(FileName); 正确工作

请决定你想使用哪种函数的变体 -https://www.mql5.com/ru/docs/files/filegetinteger


Документация по MQL5: Файловые операции / FileGetInteger
Документация по MQL5: Файловые операции / FileGetInteger
  • www.mql5.com
[in]  Идентификатор свойства файла. Значение может быть одним из значений перечисления ENUM_FILE_PROPERTY_INTEGER. Если используется второй вариант функции, то можно получать значения только следующих свойств: [in]  Указывает на местоположение файла. Если параметр равен false, то просматривается каталог данных терминала, в противном случае...
 
fxsaber:

如果在#define、#ifdef、#undef等地方至少提到一次宏,我会很舒服。即使它没有被定义。

这是因为你有许多标识符都是大写字母,而有一个潜规则,即大写字母是为宏保留的(宏高亮不是用颜色而是用字体)。

 
A100:

这是因为你有许多标识符都是大写字母,而有一个潜规则,即大写字母是为宏保留的(宏高亮不是用颜色而是用字体)。

不,很方便,因为逻辑是不明确的。

 
fxsaber:

不,很方便,因为逻辑是不明确的。

我的逻辑很简单:#define X之前的X还不是一个宏,而#undef X之后就不再是一个宏了(分别是X只在它是一个宏的地方被着色)。
 
A100:
我的逻辑很简单:#define X之前的X还不是一个宏,#undef X之后的X不再是一个宏(分别是X只在它是一个宏的地方被突出显示)。

我使用mqh,它没有#define,但有#ifdef。为什么不应该强调它们,这一点并不清楚。

 
fxsaber:

我从来没有试图通过颜色来确定。此外,如果一切都在#ifdef中,MQL4和MQL5可能有不同的子色。最简单的方法是在宏名称上做ALT+G,看看它是否存在

#define  PRICEST_TICK_PRICE //(1)
//...
#undef   PRICEST_TICK_PRICE //(2)
//...
void OnStart()
{
        int PRICEST_TICK_PRICE; //(3)
}

当在第(3)行时,我按ALT+G->移动到第(1)行。

问题:宏到底在不在?

 
A100:

当在第(3)行时,我按ALT+G转到第(1)行。

问题:宏到底在不在?

说句不好听的,我不明白你的呻吟声。我知道如何使用宏的工作。我很清楚ALT+G是什么意思,我也很清楚一个宏可以通过#undef来撤销。我喜欢这个特别编辑的行为。

书呆子有时是好事,但在这种情况下不是。

 
fxsaber:

我使用mqh,它没有#define,但有#ifdef。为什么不应该强调它们,这一点并不清楚。

如果前面没有#define X,那么#ifdef X中的X--就不会被突出显示(*),因为--这里一切都很正常(至少在MetaEditor中)。

只有一个问题要问开发者为什么在MetaEditor中X被突出显示 在#define X中,如果早先没有#define X,而在上面的(*)中却发生了这种情况。

你的问题 是相反的:为什么X没有在网站上突出显示

 

哪个符号属性负责禁止SL/TP开仓?


 
fxsaber:

哪个符号属性负责禁止SL/TP开仓?


可能是市场或即时执行