错误、漏洞、问题 - 页 2565

 
Igor Makanu:

我不打算争论

我决定描述一下我们正在讨论的问题。 顺便说一下,MQL的行为已经越来越类似于C#的行为,代码无法编译

//+------------------------------------------------------------------+
class A
{
private:
   int               count;
public:
                     A():count(0) {}
   static void       inc()        { count++; }

};

A a;
//+------------------------------------------------------------------+
void OnStart()
{
   a.inc(); //code generation error 
   A::inc();
   
}
//_______________________________________________________________________

我已经实现了Inc()方法--它对受保护的字段有效。

如果我添加了一个静态修改器,编译器应该在哪里停止检查?

 
Igor Makanu:

如果你写了一个静态方法/字段或应用了一个:::--不要依赖编译器。

虫子发生了。我像以前一样写代码:this, ::, const, static, private, public, protected被放在任何可能的地方。

我需要它首先是为了快速了解我的代码。第二,我希望编译器在编写代码时能帮助我。这对我帮助很大。


昨天我第一次面对这样的情况。我写了一个5Kb的代码,其中一部分是从各种片段中复制和粘贴的。而在第一次编译时,没有出现任何错误或警告。我很惊讶。

 
Igor Makanu:

我决定描述一下我们正在讨论的问题

//+------------------------------------------------------------------+
class A
{
private:
   int               count;
public:
                     A():count(0) {}
   static void       inc()        { count++; } // Здесь ошибка, о которой компилятор сейчас не сообщает.

};
[删除]  
Igor Makanu:

我决定描述一下我们正在讨论的问题。 顺便说一下,MQL的行为看起来越来越像C#,代码不能编译了

inc()方法 - 它对受保护的字段起作用

如果我添加了一个静态修改器,编译器应该在哪里停止检查

你的计数变量不是静态的。

静态函数如何知道这个变量属于哪个对象?

 
Koldun Zloy:

你的变量数不是静态的。

静态函数如何知道这个变量属于哪个对象?

不是一个原则,我的意思是,任何使用静态方法工作的实现都不会有编译器的完整检查,控制的全部责任都落在程序员身上。

好吧,别介意,因为这并不重要--我在一天内写了两次同样的东西https://www.mql5.com/ru/forum/1111/page2564#comment_13249284

 
Igor Makanu:

我的意思是,任何静态方法的实现都不会被编译器完全验证,所有控制的责任都落在程序员身上

你在哪里读到这个?

是你自己发明的,并不间断地重复吗?

 
Andrey Barinov:

你在哪里读到的?

是你自己编造并不断重复的吗?

这不是我想出来的,这是我的观点...原则上说,要像C#那样,只在静力学内关闭所有与静力学有关的工作--那么就不会有问题或错误;)

[删除]  
Slava:

关于该平台的几个问题。

1.是否会通过MOEX为VP增加一个允许的交易范围(如EURRUB_TOM)?现在不可能确定是否会设置限价,因为无法获得范围(可能的最大和最小价格)。请添加。

2.是否可以在终端和元编辑中加入每隔N分钟自动保存的状态?非常缺乏,因为突然断开连接,你又回到了程序开始时的状态,失去了所有的变化!非常有压力!

[删除]  

MQ,你们的储存量还好吗?提交一个文件需要10-20秒。它曾经是瞬时的...

补充:有时提交会挂掉...

 
在使用自定义工具的图表上的指标中,调用CopyBuffer函数(带有真实符号的通常掩码的句柄,例如EURUSD)返回错误4806。自定义符号是基于公式XAUUSD/31.1035*USDRUB。同样的自定义指标,同样的设置,在真实的图表上运行良好(如XAUUSD,GBPUSD等)。可能是什么问题?