对于MQL4,它是否会多次包含.MQH
头文件,如果说一个头文件使用了我们已经包含的头文件?
如果是,如何防止?
答案 0 :(得分:1)
据我所知,你不能。
与之前的问题类似 - CElem
调用CObject
来调用CStdLibErr.mqh
。 CArrayObj
还会调用包含CArray
CObject
的{{1}} CStdLibErr.mqh
,因此会CObject
被调用两次。
如果您不想两次调用(#include
)相同的.MQH
- 可能需要创建其副本或继承。
答案 1 :(得分:0)
你这样做的方式和C / C ++相同。
#ifndef MY_UNIQUE_HEADER_ID_H
#define MY_UNIQUE_HEADER_ID_H
<header file content goes here>
#endif
如果需要,您可以编辑标准头文件并添加此垫片。这样做没有什么害处,甚至可能会略微提高你的编译时间。