论坛发生了什么? - 页 6

 
Yuriy Asaulenko:

这只是意味着你已经受够了MT-MQL提供的工具。这很好。

我问你缺少什么工具?

 
Georgiy Merts:

我问,缺少什么工具?

OOP。这就是缺少的东西。

在MQL中,你有一些工具,当然它们可以被转移到C++等。但是OOP的概念本身并不被MT所支持。MT是一个封闭的生态系统。将OOP 作为一个概念应用于MT是不可能的。

 
Yuriy Asaulenko:

MQL以非常有限的方式支持OOP的概念,大多只是在一些工具方面。MT-MQL是一个自成一体、自给自足的(据开发者说)结构(一个生态系统--据开发者说)。在MT-MQL的框架内讨论或应用OOP的概念绝对是徒劳的。而在类-继承等的框架内,它并不有趣。


你知道什么是编程吗? 我怀疑 :)

 
Petros Shatakhtsyan:


你知道什么是编程吗? 我怀疑)。

不,我不知道。

 
没有Java中的接口,MQL5中就没有成熟的OOP。只有一种模仿的方式...
 
Georgiy Merts:

不,好吧,利润是可以得到的,比如说,写一些东西,评论他们的行动,通过共享项目展示他们的代码,那些想要的人--让他们补充。 我只有怀疑这些非常人是否愿意。

我不明白这里有什么好处。为了钱而培训?这个话题很久以前就死了,没有人愿意付钱。而且没有人支付我8.5年的工资,在自由飞行))。

 
Roffild:
没有Java中的接口,MQL5中就没有成熟的OOP。只有一种模仿的方式...
//--- базовый интерфейс для описания животных 
interface IAnimal 
  { 
//--- методы интерфейса по умолчанию имеют public-доступ 
   void Sound();  // звук, который издает животное 
  }; 
//+------------------------------------------------------------------+ 
//|  класс CCat наследуется от интерфейса IAnimal                    | 
//+------------------------------------------------------------------+ 
class CCat : public IAnimal 
  { 
public: 
                     CCat() { Print("Cat was born"); } 
                    ~CCat() { Print("Cat is dead");  } 
   //--- реализуем метод Sound интерфейса IAnimal 
   void Sound(){ Print("meou"); } 
  }; 
//+------------------------------------------------------------------+ 
//|  класс CDog наследуется от интерфейса IAnimal                    | 
//+------------------------------------------------------------------+ 
class CDog : public IAnimal 
  { 
public: 
                     CDog() { Print("Dog was born"); } 
                    ~CDog() { Print("Dog is dead");  } 
   //--- реализуем метод Sound интерфейса IAnimal 
   void Sound(){ Print("guaf"); } 
  }; 
//+------------------------------------------------------------------+ 
//| Script program start function                                    | 
//+------------------------------------------------------------------+ 
void OnStart() 
  { 
//--- массив указателей на объекты типа IAnimal 
   IAnimal *animals[2]; 
//--- породим потомков IAnimal и сохраним указатели на них в массив     
   animals[0]=new CCat; 
   animals[1]=new CDog; 
//--- вызовем метод Sound() базового интерфейса IAnimal для каждого потомка   
   for(int i=0;i<ArraySize(animals);++i) 
      animals[i].Sound(); 
//--- удалим объекты 
   for(int i=0;i<ArraySize(animals);++i) 
      delete animals[i]; 
//--- результат выполнения 
/* 
   Cat was born 
   Dog was born 
   meou 
   guaf 
   Cat is dead 
   Dog is dead 
*/ 
  }
 
Alexey Volchanskiy:

我不明白这里有什么好处。为了钱而培训?这个话题很久以前就死了,没有人愿意付钱。而且在8.5年的时间里,没有人支付我的工资,在自由飞行中))

你真的很了不起。教育...什么培训?所有这些类-继承的东西在 "C++傻瓜 "的20页上都有解释。那些能读懂它的人将自己学习,而那些不能读懂的人--任何培训都不会有任何好处。而且在我们之前的很长一段时间里,它一直是众所周知的。

除了那些有倾向性的人,学习很少给人带来回报,但他们几乎不需要学习。(c) D. Gibbons
 
Yuriy Asaulenko:

OOP。这就是缺少的东西。

在MQL中,你有一些工具,当然它们可以被转移到C++等。但是OOP的概念本身并不被MT所支持。MT是一个封闭的生态系统。将OOP 作为一个概念应用于MT是不可能的。

你说的一些奇怪的事情,完全没有得到证实

 
Alexey Volchanskiy:

你在说一些奇怪的事情,但完全没有得到证实

如果你认为继承类和它们的应用是OOP,那么你确实在说一些奇怪的话。是的,应用类很方便,但它还不是OOP,它只是其中的一个工具。

ZS 还记得C++的最早版本之一叫什么吗?C与类--根本没有提到OOP)。

原因: