错误、漏洞、问题 - 页 2967

 
Artyom Trishkin:
不初始化你的变量是不正常的行为。初始化它,就不会有这样的问题了。

完全支持它。

但这并不意味着这个错误无处可寻 )))。只是想确保一切顺利。

 
mktr8591:

完全支持它。

但这并不意味着这个错误无处可寻 )))。只是想确保一切正常。

这很可能是一种保护。
由于在mql中不能访问内存单元,我想当访问一个变量时,其垃圾值是随机产生的。
如果变量没有被初始化,那么在调试时,找不到错误的概率就会增加很多倍))
而且编译器很可能在警告中告诉你,这个变量没有被初始化。

 
Roman:

这很可能是一种保护。
由于在mql中不能访问内存单元,我想当一个变量被访问时,其垃圾值是随机产生的。
而如果变量没有被初始化,在调试时,找不到错误的概率就会增加很多倍))
而且编译器很可能在警告中告诉你,变量没有被初始化。

或优化。由于该变量是未定义的,我们可以给它任何我们想要的值,例如,在一个寄存器中。

 
JRandomTrader:

或优化。由于变量没有定义,我们可以给出任何最接近的值,例如在一个寄存器中。

类似这样的事情,从我的环境来看。当然,正如我所说的,这一代人并不合适,只是一个笼统的假设。

 

决定了解一下MQL5云计算网络服务 中的2个代理商能赚多少钱,以便在未来建立一个带有多核处理器的铁。我使用代理管理器添加了代理。似乎已经把它们添加好了。

代理人经理

似乎没有什么值得怀疑的 地方...我登录了我的MQL5.COM账户。我已经在myAlpari的 "代理 "部分看到了创建的代理。我还在任务管理器中发现两个服务,MetaTester-1和MetaTester-2但在半天的时间里,代理人没有任何任务一切都是空的。为什么特工们不工作?

Распределенные вычисления в сети MQL5 Cloud Network
Распределенные вычисления в сети MQL5 Cloud Network
  • cloud.mql5.com
Заработать деньги, продавая мощности своего компьютера для сети распределенных вычислений MQL5 Cloud Network
 
	 CList *deals_array = new CList;

         for(int i=0;i<10;i++)
         {
            RobotDeal *cobj = new RobotDeal;
            cobj.ticker = "ticker " +IntegerToString(i);
            deals_array.Add(cobj);
         }
         
         RobotDeal *cobj11 = new RobotDeal;
         cobj11.ticker = "ticker 11 ";
         deals_array.Add(cobj11);
         
         RobotDeal *cobj12 = new RobotDeal;
         cobj12.ticker = "ticker 12 ";
         deals_array.Add(cobj12);
         
         RobotDeal *cobj13 = new RobotDeal;
         cobj13.ticker = "ticker 13 ";
         deals_array.Add(cobj13);
         
         RobotDeal *cobj14 = new RobotDeal;
         cobj14.ticker = "ticker 14 ";
         deals_array.Add(cobj14);

         Print("Total: " + IntegerToString(deals_array.Total()));

         for(int i=0;i<deals_array.Total();i++)
           {
               RobotDeal *object=deals_array.GetNodeAtIndex(i);
               Print(object.ticker);
           }
         
         for(int i=0; i < 14; i++)
         {
            Print("remove # " + IntegerToString(i));
            RobotDeal *deal = deals_array.GetNodeAtIndex(i);
            
            if(CheckPointer(deal) != POINTER_INVALID)
            {
               Print("remove: " + deal.ticker);
               deals_array.Delete(i);
            }
         }

         for(int i=0;i<deals_array.Total();i++)
           {
               RobotDeal *object=deals_array.GetNodeAtIndex(i);
               Print(object.ticker);
           }

         Print("Total end: " + IntegerToString(deals_array.Total()));
class RobotDeal: public CObject
{
    public:

    string ticker;

    RobotDeal() {}
};

你能告诉我如何正确地从Clist 中删除项目吗?当我试图删除时,只有一半被删除,而且索引出了问题。我已经尝试了各种方法。它根本不起作用!


当执行这段代码时,它的输出结果如下,例如


总数:14

票价0

股票1

票据2

票据3

票据 4

票价5

股票6

勾选7

票据 8

股票9

票据 11

股票12

股票代码 13

代码 14

移除#0

移除: 勾选 0

移除#1

移除: 滴答声2

移除#2

移除: 勾选4

移除#3

移除: 勾选 6

移除#4

移除: 勾选8

移除#5

移除: 滴答声 11

移除#6

移除: 勾选13

移除#7

移除#8

移除#9

移除#10

移除#11

移除#12

删除#13

股票1

票据3

票价5

勾选7

股票 9

股票12

代码 14

总结:7


 
Mihail Matkovskij:

决定了解一下MQL5云计算网络服务 中的2个代理商能赚多少钱,以便在未来建立一个带有多核处理器的铁。我使用代理管理器添加了代理。似乎已经把它们添加好了。

似乎没有什么值得怀疑的 地方...登录到我的MQL.COM账户。我已经在我的账户中的 "代理 "下看到了创建的代理。我还在任务管理器中发现两个服务,MetaTester-1和MetaTester-2但在半天的时间里,代理人没有任何任务一切都是空的。为什么特工们不工作?

你为你的代理人得到了什么公关?例如,20日有PR180的任务(特别是在上午)。

 
Vladimir Karputov:

你找了哪些公关代理?例如,PR180的20Chisla是任务(特别是在早上)。

我有119的公关代理。我想知道这对它有什么影响?

 
Mihail Matkovskij:

我有119个公关代理。我想知道这对它有什么影响?

我不太清楚。我只是想知道。

 
DimaDDM:

你能告诉我如何正确地从Clist 中删除项目吗?当我试图删除时,只有一半被删除,而且索引被破坏。我试过各种方法,根本不起作用!

你有一个错误的删除!你的代码。

        for(int i=0; i < 14; i++)
        {
            Print("remove # " + IntegerToString(i));
            RobotDeal *deal = deals_array.GetNodeAtIndex(i);
            
            if(CheckPointer(deal) != POINTER_INVALID)
            {
               Print("remove: " + deal.ticker);
               deals_array.Delete(i);
            }
         }

当你删除每一个项目的时候,列表就会变小这就是为什么你必须这样做。

        for(int i = deals_array.Total() - 1; i >= 0; i--)
        {
            Print("remove # " + IntegerToString(i));
            RobotDeal *deal = deals_array.GetNodeAtIndex(i);
            
            if(CheckPointer(deal) != POINTER_INVALID)
            {
               Print("remove: " + deal.ticker);
               deals_array.Delete(i);
            }
         }

或者更简单。

deals_array.Clear();