新人对MQL4和MQL5的任何问题,对算法和代码的帮助和讨论 - 页 642

 
Alexey Viktorov:

问题在于理解什么是include文件和什么是库。

编译器从.mqh文件中 "攫取 "使用的部分,并编译出一个可执行文件,在没有.mqh文件的情况下也能工作。

在所有将使用引用图书馆的程序的计算机上,都必须有图书馆。这非常不方便,很少有人使用它,我不认识他们。

我建议忘掉这些库,而去了解所包含的文件。

好吧,你们可以争论一下谁用什么更舒服!
 
Alexey Viktorov:

问题在于理解什么是include文件和什么是库。

编译器从.mqh文件中 "攫取 "使用的部分,并编译出一个可执行文件,在没有.mqh文件的情况下也能工作。

在所有将使用引用图书馆的程序的计算机上,都必须有图书馆。这是很不方便的,很少有人使用,我不知道。

我建议你忘记库的问题,而去处理包含文件。

这正是我们正在谈论的问题。

我已经为此提供了文件。

它不是一个DLL,而是一个.MQ4(.EX4)文件,其中储存了常用的函数。

问题是,EA机构中的这些功能工作起来没有任何问题。

但当你把它们转移到通过INCLUDE连接的文件时,你会得到上述错误。

我不认为有任何理由这样做。

 
Sergey Maksiutenko:

因此,这正是我们正在谈论的问题。

我已经为此提供了文件。

这不是一个DLL,它是一个.MQ4(.EX4)文件,其中储存了常用的功能。

问题是,EA机构中的这些功能工作起来没有任何问题。

但当你把它们转移到通过INCLUDE连接的文件时,就会出现上述的错误。

我不认为有任何理由这样做。

对不起,你在跟我开玩笑吗?

//+------------------------------------------------------------------+
//|                                                      my func.mqh |
//|                        Copyright 2018, MetaQuotes Software Corp. |
//|                                             https://www.mql5.com |
//+------------------------------------------------------------------+
#property copyright "Copyright 2018, MetaQuotes Software Corp."
#property link      "https://www.mql5.com"


//+++++++++++++++++++++++++++
#property strict 
//+++++++++++++++++++++++++++
#import "my_func.ex4"
int calc (int a,int b);
#import 

//+------------------------------------------------------------------+
//| defines                                                          |
//+------------------------------------------------------------------+
// #define MacrosHello   "Hello, world!"
// #define MacrosYear    2010
//+------------------------------------------------------------------+
//| DLL imports                                                      |
//+------------------------------------------------------------------+
// #import "user32.dll"
//   int      SendMessageA(int hWnd,int Msg,int wParam,int lParam);
// #import "my_expert.dll"
//   int      ExpertRecalculate(int wParam,int lParam);
// #import
//+------------------------------------------------------------------+
//| EX5 imports                                                      |
//+------------------------------------------------------------------+
// #import "stdlib.ex5"
//   string ErrorDescription(int error_code);
// #import
//+------------------------------------------------------------------+

我故意突出了这一行,这说明了什么?!!!!

 
Vitaly Gorbunov:

对不起,你在跟我开玩笑吗?

我故意突出了这一行,这说明了什么?!!!!

#property strict 

指示编译器应用一个特殊的严格查错模式

 
Sergey Maksiutenko:

指示编译器应用一个特殊的严格的错误检查制度

这意味着什么呢?

 
Sergey Maksiutenko:

指示编译器应用一个特殊的严格错误检查模式

上面我给出了直接链接https://docs.mql4.com/ru/mql4changes 搜索出口

如果你不知道如何使用搜索,这是你可以找到!!!!

!!!!

Обновленный MQL4 - Справочник MQL4
Обновленный MQL4 - Справочник MQL4
  • docs.mql4.com
Начиная с билда 600 язык программирования MQL4 полностью переработан и достиг уровня MQL5 - теперь писать торговых роботов на MQL4/MQL5 можно в единой среде разработке MetaEditor и используя единые стиль, библиотеки и инструменты отладки. MQL4 пользуется заслуженной популярностью среди разработчиков автоматических торговых систем благодаря...
 

我也一样!!。

#property library
//+++++++++++++++++++++
#property strict
//+++++++++++++++++++++
//=========================
int calc (int a,int b)
{
int c = a + b;
return(c);
}
现在你知道你的错误在哪里了吗?
 
Vitaly Gorbunov:

我也一样!!。

现在你知道你的错误在哪里了吗?

唉,我不明白......。

请告诉我...

 
Sergey Maksiutenko:

唉,我不明白......。

请告诉我。

如果你指的是#property 属性

我已经检查过了...

没有它,库文件甚至不能编译
 

我打算抽烟,所以我不会写得太苛刻,并试图向你解释什么是#财产严格。