错误、漏洞、问题 - 页 1060

 
x100intraday:
你看。在我的脑海中,缺乏更高的时间框架,不由自主地等同于怀疑"开发商没有告诉我什么"。"别人不也是这样吗?
我没有这样的东西!而且我确信所有的东西都可以 "谈判"--因为像你这样需要这种伎俩的人非常少。
 
server:
我没有这样的情况!而且我相信一切都可以安排--因为像你这样需要的人很少。

我的观点:你永远不可能有太多的数据用于分析。即使对短期交易者来说,了解今天以外的情况有时也很有用。缺少信息,尤其是重要性不太明显的信息,迟早会对交易者不利。

然而,有时有太多相互矛盾的计算结果,无法做出决定,所以似乎不需要更多的数据。但这不是一个数据冗余的问题,而是一个正确的数据管理问题。在背景信息过剩的情况下,人们能够做一些事情,包括无视它,但在缺乏信息的情况下,人们无法走得更远,也无法朝着正确的方向前进。

 
MetaDriver:
2013.09.07 02:39:36 iTester-SL (GBPUSD,M1) 1个CTestStat类型的对象离开。
2013.09.07 02:39:36 iTester-SL (GBPUSD,M1) 剩下1个未删除的对象

内存泄漏 // 或编译器故障。

该对象已被声明为一个静态全局变量。(!)也就是说,它根本就不是动态的。

在使用这个变量的那部分代码被移到一个.mqh文件并在该文件中声明为extern后,问题就发生了(之前没有发现泄漏)。

该程序运行良好。

// 我通过声明对象的动态性避免了这个问题。现在我在OnInit()中创建它,在OnDeinit()中删除它。 泄漏(泄漏信息)停止了。

谢谢你,让我们来看看。
 

有谁知道PROFIT 是什么样的交易工具吗?

 
MetaDriver:

在此向论坛上的人提出一个很大的要求,测试OnCalculate()是否有重复调用,以及在每个tick上将prev_calculated清空。

并在这里公布你的结果(是/不是重复的)。

在这里 测试指标。

我想我已经成功地考虑到了虱子的重复问题。 帕维尔-查特森科(kPVT) 帮助了我//非常感谢你!我想我已经考虑到了。

结果发现,当复制请求(CopyXXX(...) 超出要复制的缓冲区范围时,就会出现这个问题。特别是,在提供给测试的指标中,有一个不准确的地方,导致要求超过rate_total条。

更正后的版本附在拖车中。 它在我的终端中工作,在终端的所有设置下都没有重复的刻度。有兴趣的同志可以查看。如果有人有嘀嘀的重复,请发信号。

附加的文件:
 
paladin800:

有谁知道PROFIT 是什么样的交易工具吗?

最有可能的是没有击中任何符号的交易,也许是充值。
 

类的继承是有问题的。我已经三天没能上完课了,因为汇编的虫子正在悄悄出现!"。

这里有第一个错误。

class CAbstract
{
protected:
   int m_handle;

public:
   CAbstract() : m_handle(INVALID_HANDLE) {}
   int GetHandle() const {return(m_handle);}
};

class CMyObj : CAbstract
{
};

class CHandle : CAbstract
{
protected:
   CMyObj *m_objects[];

public:
   ~CHandle()
   {
      int x;
      // Error: 'CAbstract::GetHandle' - cannot call private member function
      for (x = ArraySize(m_objects)-1; x>-1;x--) Print(m_objects[x].GetHandle());
      
      Print(m_handle);
   }
};


而这里是第二个。

class CAbstract
{
protected:
   int m_handle;

public:
   CAbstract() : m_handle(INVALID_HANDLE) {}
   int GetHandle() const {return(m_handle);}
};

class CMyObj : CAbstract
{
};

class CHandle : CMyObj
{
public:
   void Log()
   {
      // Error: 'm_handle' - private member access error
      Print(m_handle);
   }
};

好吧,没有私人成员!

错误报告编号为#835727

 
Roffild:

类的继承是有问题的。我已经三天没能上完课了,因为汇编的虫子正在悄悄出现!"。

这里有第一个错误。


而这里是第二个。

好吧,没有私人成员!

错误报告编号为#835727

然而,有。 这样试试吧。

class CAbstract
{
protected:
   int m_handle;

public:
   CAbstract() : m_handle(INVALID_HANDLE) {}
   int GetHandle() const {return(m_handle);}
};

class CMyObj : public CAbstract   // Наследование по умолчанию приватное. И в С++ и в mql
{
};

class CHandle : CAbstract
{
protected:
   CMyObj *m_objects[];

public:
   ~CHandle()
   {
      int x;
      // Error: 'CAbstract::GetHandle' - cannot call private member function
      for (x = ArraySize(m_objects)-1; x>-1;x--) Print(m_objects[x].GetHandle());
      
      Print(m_handle);
   }
};
私有化继承使被继承类的所有成员成为私有。
 
MetaDriver:
 // Наследование по умолчанию приватное. И в С++ и в mql

来自MQL5的帮助。

class CDerived: public CBaseClass // public наследование можно не указывать, оно по умолчанию
  {
 
Roffild:

来自MQL5的帮助。

照本宣科的人将死于错别字。