PLO - 页 6

 
Rosh:
只要你不明确地把对象作为指针引用,就没有什么区别。自己试试吧,请看文章《在MQL5中何时使用指针》。
谢谢你!
 
Serj_Che:

请不要踢我,用你的手指解释一下什么是OOP以及如何准备它。

我希望能听到MKL5的创造者和程序员们的回答,他们要求在MKL5中实现OOP。

至于它的速度加快或减慢。从表面上看,MKL5是一个资源消耗者,与MKL4相比,速度没有增加。

我希望看到性能提高的具体例子。

OOP允许你模拟不同的情况,也可以使计算并行化。俄罗斯方块不是一个很好的例子,它可以不用OOP来写,只是代码更多。例如,尝试创建一个鱼缸,每条鱼都有自己的速度和自己的轨迹,而且有500条。- 对于这样的任务,OOP是正确的。如果我们采取外汇中的专家顾问,那么,例如,一个对象可以通过历史上的某些参数运行,而EA本身将在那个时候进行交易。或相同的图形面板--工具箱--例如,几个独立的数据窗口。在需要工作和计算的并行性的地方,这就是OOP的作用。

 

OOP与平行化没有任何关系。

 
papaklass:
那么,"在需要工作和计算的并行性的地方,这就是OOP应该出现的地方 "的说法是不正确的?

例如,CUDA是用简单的C语言编写的,在那里没有OOP是不可能的。

据我所知,今天还没有任何语言直接使用OOP 来实现并行化。

 
papaklass:
那么,"在需要工作和计算的并行性的地方,这就是OOP应该出现的地方 "的说法是不正确的?
并非如此。在应用OOP时,你应该考虑到资源核算,例如,不是有5亿条鱼,而是有500万条鱼加上海藻))。让我们举个例子,例如,你有一个专家顾问,使用了几种资金管理方案。而且你想看到EA在不同资金管理方案下工作的整个动态。如果我们不使用OOP,我们将不得不为每个方案依次计算,这可能会导致勾股的过时。或者使每个MM方案的执行在一个对象中进行。由于有资源储备,所有的东西都会几乎 "一样 "地输出--"并行"。这就是我心目中的那种平行关系。
 
papaklass:
所以,"在需要工作和计算的并行性的地方--这就是OOP的作用 "的说法是不正确的?

是的,这不是真的。

 
Serj_Che:

OOP是一个错误,就像 "Niva "或 "Lada"。

在MetaTrader 5中使用常规程序化编程。

它在这里和MetaTrader 4中一样可以访问。

太糟糕了,MetaQuotes没有强调这一点。

 
MoneyJinn:

OOP是一个错误,就像 "Niva "或 "Lada"。

在MetaTrader 5中使用常规程序化编程。

它在这里和MetaTrader 4中一样可以访问。

太糟糕了,MetaQuotes没有强调这一点。


一个错误,他们为什么要这样做?
 
MoneyJinn:

OOP是一个错误,就像Niva或Lada。

在MetaTrader 5中使用正常的程序性编程。

它在这里和MetaTrader 4一样可用。

可惜的是,MetaQuotes没有强调这一点。

在我看来,你大错特错了!

一旦你有了大型项目(至少有几千行代码),你就会发现用类(OOP)编程可以非常容易地控制开发过程,最重要的是,调试。

此外,OOP使项目更接近现实生活,事实上在现实生活中,我们只是处理对象的实例(一栋房子、一棵树、一个人、一辆车、一个订单等),即处理一组属性和方法 :)

试着用OOP做一些事情,你会发现,它更加优雅和清晰。它比程序化编程更容易!

 

MoneyJinn:

OOP是一个错误,就像Niva或Lada。

在MetaTrader 5中使用正常的程序性编程。

它在这里和MetaTrader 4一样可用。

遗憾的是,MetaQuotes没有关注它。


在OOP的使用不会带来任何金钱上的实际利益之前,都会有争论。我并不支持争论。 毕竟,你可以阅读维基百科和谷歌OOP、并行化的优点和缺点。如果你需要例子,在终端程序集中有很多。即使是这套终端程序,写程序 不是更容易吗?传统的程序性编程的通用性较差。

我有几个对象,每个对象都在做不同的事情--对于每个对象都要写程序,并等待它们依次完成--不麻烦。

OOP是一个错误,就像 "Niva "或 "Lada"。- 勇敢地我不知道你的电脑上安装了多少个程序,包括操作系统?那么使用OOP的程序和不使用OOP的程序的比例是多少?