对MT5的祝愿 - 页 72

 
stringo:

我们已经讨论过这个问题。我们发现,我们可以用现有的功能来做。

真的吗?那么哪些功能可以省去,请提醒我?
 
为什么全局变量 只能是双倍类型的?而在4中,它是一个可怕的阻碍,在5中,不清楚为什么不,特别是字符串变量。
Документация по MQL5: Основы языка / Переменные / Глобальные переменные
Документация по MQL5: Основы языка / Переменные / Глобальные переменные
  • www.mql5.com
Основы языка / Переменные / Глобальные переменные - Документация по MQL5
 

TheXpert:
Да ладно? И каким же функционалом можно обойтись, напомните, пожалуйста?

我告诉过你。可用。

例如,我们有头文件包括一次。不需要#ifdef。

我们可以使用在不同条件下以不同方式初始化的变量,而不是根据条件对常量进行宏置换。

同样,条件可以通过常量变量来定义,而不是默认的定义。

常数IS_DEBUG_MODE 的存在

能够即时决定程序哪个环境下运行(测试、调试、视觉测试、优化、允许使用dll)。

 
marketeer:
为什么全局变量 只有double类型?4中两者都干扰得很厉害,5中不清楚为什么不干扰,特别是字符串变量。

这是数字数据的最大尺寸。你可以把多达8个字节的信息放入一个全局变量,你可以把它解释为长,解释为2个ints或64位。

为什么全局变量不能是字符串类型,这与全局变量不能是数组的原因相同--不要让问题不必要地复杂化

 
stringo:

为什么全局变量 不能是字符串类型,这与全局变量不能是数组的原因 相同--不要让事情变得不必要地复杂化

斯拉瓦,在这种情况下,公众很难同意你的观点--这种复杂化不会是不必要的。你想进行投票吗?
 
MetaDriver:
斯拉瓦,在这种情况下,公众很难同意你的观点--这种复杂的情况不会是不必要的。你想进行投票吗?

这里的 "过度复杂化 "是指为少数用户增加新的缓慢功能。现在已经实现了一个非常有效的存储和访问机制,我们不想破坏它。

为了在程序之间(甚至在同一台计算机上的客户终端之间)交换数据,你可以使用文件。 只要写一次几个标准类就够了。

顺便说一下,关于字符串全局变量。你需要它们在一个客户终端内的程序之间进行字符串数据交换?那么,为什么不通过用户事件 直接传递字符串呢? 这比通过全局变量交换数据要有效得多。

 
stringo:

这是数字数据的最大尺寸。你可以把多达8个字节的信息放在一个全局变量 中,你可以把它解释为长,解释为2个ints或64位。

为什么全局变量不能是字符串,与全局变量不能是数组的原因相同--为了不使事情不必要地复杂化

你知道这种熟悉的推理:你让自己的生活更容易,而让用户更难,尽管程序似乎是为他们的长度而写的。对你来说,在执行方面没有特别复杂的问题,但由于缺乏其他东西而试图按照你的意愿 "解释 "这个双倍的东西--这对一个申请人来说是一个复杂的问题,如果不说更强的话。虽然你必须用即兴的手段来模拟其他类型的全局变量--你在系统中可以做一次的事情,应用开发者却在自己的地方做。
 
stringo:

顺便说一下,关于字符串全局变量。你需要它们在一个客户终端内的程序之间交换字符串数据,对吗?那么,为什么不通过用户事件 直接传递字符串呢? 这比通过全局变量交换数据要有效得多。

这些是完全不同的事情。状态必须被存储和访问,而消息是改变状态的一种手段。
 
marketeer:
一个熟悉的推理:你让自己的生活更容易,而让用户更难,尽管程序似乎是为他们写的。对你来说,在实施方面没有特别复杂的问题,但试图以任何方式 "解释 "这个替身,因为缺乏其他东西--这对用户来说是一个复杂的问题,如果不是说更强的话。虽然你必须用即兴的手段来模拟其他类型的全局变量--你在系统中可以做一次的事情,应用开发者却在自己的地方做。

为什么要模拟任何东西? 你可以在全局变量的8个字节中存储任何类型的数据,除了字符串。如果是double类型的数据,你直接使用结果值。如果是其他类型的数据,那么你需要额外进行一次 简单结构的复制操作来获得正确类型的数据。

 
stringo:

为什么要模拟任何东西? 你可以在全局变量的 8个字节中存储任何类型的数据,除了字符串。如果是double类型的数据,你直接使用结果值。如果是其他类型,你需要额外进行一次 简单结构的复制操作来获得正确类型的数据。

我主要对弦乐感兴趣。