作者又在胡说八道了。引用:"但是,C/C++ 中的一些指令在 MQL5 中是不可用的。其中之一就是 #ifdef,虽然它看起来无趣,但在某些时候却能帮助我们控制我们正在处理的版本的某些部分。"
#ifdef 在 MQL4 和 MQL5 中已经存在了很长时间。
#define PRINT int OnInit() { #ifdef PRINT Print("MQL5中的ifdef是"); #endif return(INIT_SUCCEEDED); }
Alexey Volchanskiy # :
作者正在从头开始。说明:"C/C++ 中存在一些 MQL5 中没有的规则。其中之一是 #ifdef,虽然它可能看起来令人不快,但在某些方面确实有助于控制我们正在使用的版本的某些部分。"
#ifdef 已在 MQL4 和 MQL5 中使用了很长时间。
对不起。不过,我在文中提及该指令是个错误。我的本意是指 #if 指令,因为 #ifdef 指令等同于 C 和 C++ 中的 #if defined 指令。但在 MQL5 中,我们使用 C 和 C++ 中也有的 #ifdef。同样,目的是参考 #if 指令,它的目的完全不同,甚至可以用来检查定义的值。但由于我的书写错误,我最终写了 #ifdef,却没有意识到这一点。我为自己的疏忽道歉。👍
新文章 从基础到中级:Include 指令已发布:
在这篇文章中,我们将讨论一个对你非常有帮助的话题。一旦解释清楚,我将能够开始展示更复杂的代码示例。到目前为止,在不利用 MQL5 中可用的某些资源的情况下编写代码对我来说是相当具有挑战性的。尽管你们中的一些人可能认为这对我来说很容易,但事实上,在没有这些资源的情况下编写代码是一个重大的挑战。但现在,我们将在已经可以做的事情列表中添加一些新功能。
我所指的资源是编译指令的使用。如果没有这些指令,我们能做的很多事情都会变得非常有限,迫使我们编写比实际编程场景中所需更多的代码。
与许多人的想法相反,编译指令不会使代码更加混乱。它们的主要目的恰恰相反:使代码更简单、更快、更容易处理和修改。问题是,许多初学者要么忽略了,要么没有学会如何正确使用这个资源。这可能是因为一些编程语言的工具包中没有这样的资源。一些不包含编译指令的语言示例包括 JavaScript 和 Python。虽然这些语言在普通程序员中很受欢迎,但它们不适合创建某些类型的应用程序。然而,这里的目的不是讨论这些语言,而是专注于MQL5。那么,让我们从本文的第一个主题开始。
作者:CODE X