为了简化我遇到的问题,我在foo.mqh
和中包含了两个类bar.mqh
。
当我编译它们时,我得到:
'bar' - wrong parameters count foo.mqh Line 20 Column 9
这是这一行foo.mqh
:
foobar(bar & b) { example = b;}
我已经阅读了其他处理此错误的帖子,但它们似乎不是面向对象的,我无法将这些实例与这个相关联。
是那个栏有默认值吗?....因为构造函数? 实际上这可能不是因为如果我把它们放在同一个文件中,我会得到同样的错误。
有没有办法解决这个问题?
任何帮助,将不胜感激。谢谢
bar.mqh
#property copyright "Copyright 2015, MetaQuotes Software Corp." // 01
#property link "https://www.mql5.com" // 02
#property strict // 03
// 04
class bar{ // 05
private: // 06
int b; // 07
int u; // 08
int g; // 09
public: // 10
bar * operator=(const bar & example) // 11
{ // 12
b = example.b; // 13
u = example.u; // 14
g = example.u; // 15
return GetPointer(this); // 16
} // 17
bar(bar & example) // 18
{ // 19
b = example.b; // 20
u = example.u; // 21
g = example.u; // 22
} // 23
// 24
}; // 25
foo.mqh
#property copyright "Copyright 2015, MetaQuotes Software Corp." // 01
#property link "https://www.mql5.com" // 02
#property strict // 03
// 04
// 05
#include<bar.mqh> // 06
// 07
class foo { // 08
}; // 09
// 10
class foobar: public foo { // 11
private: // 12
bar example; // 13
public: // 14
foobar(bar & b) { example = b;} // 15
bar getExample() { return example; } // 16
}; // 17