在MQL5中一起学习和写作 - 页 27

 
Khomtchenko:

你能告诉我底部的那些绿条是什么意思吗?在MT4中,它们指的是手数,在手数变化时被抽出。但它在这里有什么用呢?还是我的手数变化?看来,我没有改变它。

它在左上角 这样说。"保证金水平"。

 

另一个问题:从测试者的图表来看,mql5上的入市次数少了很多,或者测试者以笼统或平稳的方式显示了几个交易的结果。好吧,测试结果 是不同的,就这样吧!

顺便说一句,我听到了很多聪明的说法,如 "擦拭大灯"、"敲打车轮 "和EA,但没有人向我特别解释,也没有人指出我的错误。我也会在一份报告中总结所有版主和专家的意见,以明确超级产品mql5是否有正常的技术支持。

 
Khomtchenko:
顺便说一下,我听了很多聪明的东西,如 "擦大灯 "和 "敲打车轮",我贴了EA,但没有人专门向我解释什么,也没有指出我的错误。我还会把版主和专家的所有评论总结在一份报告中,以明确该超级产品mql5是否有像样的技术支持。

你有没有把测试人员的报告以压缩包的形式附在你的帖子里?

只要你自己看一看,做一个后处理分析,你就会一下子明白一切。没有必要把时间浪费在 "总数和交易数量 不一致 "这样的肤浅估计上。

你已经得到了搜索路径:检查历史(你依赖的是错误的信念,认为历史在各地都是一样的)和逐案分析。

Документация по MQL5: Торговые функции / HistoryDealsTotal
Документация по MQL5: Торговые функции / HistoryDealsTotal
  • www.mql5.com
Торговые функции / HistoryDealsTotal - Документация по MQL5
 

最新的版本引入了带参数的构造函数。非常感谢开发者!

但在继承这种构造函数时出现了一个问题。在编译以下代码时,出现了错误 "clsBase - 错误的参数计数",编译器指向红色粗线。

class clsBase {
    protected:
        string __strSymbol;
        ENUM_TIMEFRAMES __enumTF_thisTF;

    public:
        void clsBase(int intX);
        void ~clsBase();
};


void clsBase::clsBase(int intX) {

}


class clsInherit:public clsBase{

    public:
        void clsInherit(int intX,double dblY);
        void ~clsInherit();
};


void clsInherit::clsInherit(int intX,double dblY):clsBase(int intX){

}

此外,如果你注释掉绿色的粗线,编译就会顺利进行而不出错。

也就是说,如果这不是一个bug,我对一个继承类的构造函数的声明是不正确 的。

到目前为止,帮助中没有任何新内容,也就是说,关于带参数的构造函数,它说它们是不可能的。

请解释继承类中带参数的构造器调用的语法。

 

这样试试吧。

//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
class clsBase
  {
protected:
   string            __strSymbol;
   ENUM_TIMEFRAMES   __enumTF_thisTF;

public:
   void              clsBase(int intX);
   void             ~clsBase() {};
  };
//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
void clsBase::clsBase(int intX)
  {
  }
//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
class clsInherit:public clsBase
  {
public:
                     clsInherit(int intX,double dblY):clsBase(intX)
     {
     }
                    ~clsInherit()
     {

     }
  };
 

我已经试过了!

都是一样的

void clsInherit::clsInherit(intX,double dblY):clsBase(intX)

void clsInherit::clsInherit(int intX,double dblY)


编译器也是这么说的

PS 在写这篇文章时,你的帖子被更新了。我现在再试试。


PPS 试了一下,但和我之前写的一样,也就是没有构造体的情况下,编译会通过。

但我不需要在类的声明体中写出构造函数,我只需要在那里声明它,然后再写出构造函数本身(我有一个长的),就像通常做的那样。

换句话说,我将重复这个问题 :)

在继承类中调用带参数的构造函数的语法是什么?

 
falkov:

但我不需要在类的声明体中写出构造函数,我只需要在那里声明它,然后再写出构造函数本身(我有一个长的),就像通常做的那样。

在MQL5中,建议不要把类拆成MQH/MQ5文件,也不要在一个文件中把描述和实现分开,而是直接在类块中写入主体。


继承类中带参数的构造函数调用的语法?

上述错误已经被修复--将在下一个版本中提供。它将有可能在类描述块之外采取复杂构造函数的实现。


ps:我的例子代码编译的很好,我检查了一下

 

你的例子编译时没有错误,这就是我说的,但这不是我需要的。

谢谢你的下一步建设,期待着你的到来!

 
你有没有把测试人员的报告以压缩包的形式附在你的帖子里?

我已经为你安排了顾问。看到你喜欢的任何东西!10秒编译,再测试1分钟。你想要对象的属性,我给你整个对象。

你会得到不同的结果,而且结果是巨大的不同。专家顾问有一个非常小的代码。几个标准的开仓函数和4行的策略本身。

好的。是否有任何其他网站,mql5产品开发人员可以站在他们的开发背后?这里没有任何帮助。只是借口。就像你能自己想出办法一样......谢谢大家。

Документация по MQL5: Стандартные константы, перечисления и структуры / Константы объектов / Свойства объектов
Документация по MQL5: Стандартные константы, перечисления и структуры / Константы объектов / Свойства объектов
  • www.mql5.com
Стандартные константы, перечисления и структуры / Константы объектов / Свойства объектов - Документация по MQL5
 
Khomtchenko:

是否有任何其他网站,mql5产品开发人员可以为他们的开发站出来?

这里没有任何帮助。只有借口。就像你会自己想出办法一样......

首先,这些是你的发展专家。

第二,如果你懒惰,为什么别人也要这样做?