错误、漏洞、问题 - 页 716 1...709710711712713714715716717718719720721722723...3184 新评论 sion 2012.04.13 09:31 #7151 MetaDriver:全局变量也不一定要自动初始化。你可能只是 "幸运"。幸运的引号,因为这种幸运充满了随后对开发者的左翼主张的疯狂,比如 "昨天还能用,今天就不行了,你的平台不稳定......"。来自帮助。全局变量的范围 是整个程序,全局变量可以从程序中定义的所有函数访问。它们被初始化为零,除非明确指定另一个初始值。在你试图处理全局变量之后,就会发生这样的错误。P.S. 你一定是被初学者的愚蠢问题弄得饥肠辘辘了,你愤怒地写下这个问题。我认为,编译器并不关心什么代码量,更多的初始化只是让它慢了几分之一秒,而测试者的策略则是另一回事。 Документация по MQL5: Основы языка / Переменные / Глобальные переменные www.mql5.com Основы языка / Переменные / Глобальные переменные - Документация по MQL5 Rashid Umarov 2012.04.13 09:53 #7152 sion:来自帮助。全局变量的范围 是整个程序,全局变量可以从程序中定义的所有函数访问。它们被初始化为零,除非明确指定另一个初始值。下面还有一个链接也请看 变量初始化。任何变量在定义时都可以被初始化。如果该变量没有被明确初始化,存储在该变量中的值可以是任何东西。 不进行隐式初始化。 sion 2012.04.13 10:19 #7153 初始化为零,除非明确指定其他初始值。不进行隐式初始化。我不知道该相信什么。如果没有明确指定数值,它们要么被初始化为零,要么不进行隐式初始化。或其他一般的东西) Slava 2012.04.13 10:26 #7154 sion:我甚至不知道该相信什么。如果没有明确设置数值,它就被初始化为0,或者它没有被隐式初始化。或其他一般的东西)。你不能相信任何人。你可以相信我。为什么要把编程文化的问题变成一个信仰问题?你不做显式初始化?缺陷迟早会找上你(不一定是在mt5中)。 sion 2012.04.13 10:38 #7155 stringo:你不能相信任何人。我可以 (c) Müller为什么要把编程文化的问题变成一个信仰问题?你不做显式初始化?缺陷迟早会找上你(不一定是在mt5中)。 让我们依靠直觉。我最后的帖子似乎都可以擦掉了,水是没什么好说的。 Slava 2012.04.13 11:03 #7156 sion: 让我们依靠直觉。你也许可以擦掉我最后的帖子,没有什么可谈的。为什么在如此微妙的问题上要依靠直觉?只要明确地初始化你的所有变量。在某些情况下,不必要的初始化问题只与那些挤压时钟周期以节省微秒的专业人士有关。 Andrey Vasiliev 2012.04.14 16:07 #7157 建立630ArrayResize()函数(ArraySetAsSeries()=true)在数组大小减少时删除了一个错误的项目。它删除了索引为0的项目,而它应该是数组的 最后一个项目,即索引为(n-1),其中n是数组的大小。在2011年秋季的构建中,一切工作正常。 Yedelkin 2012.04.15 05:21 #7158 MoneyJinn:当ArraySetAsSeries()=true时,减少数组大小时ArrayResize()出错。从数组的错误一侧删除元素。 你是说 "数组中最老的元素"(最左边的那个)被移除? fellow 2012.04.15 07:29 #7159 curwords=GetPointer(firstwords); Print("next======",curwords.m_next!=NULL); while(curwords.m_next!=NULL|curwords.length<pp){ curwords=GetPointer(curwords.m_next); }当测试一个突出显示的字的EA时,在'iTester 7.mq5'(161,16)中 错误指示无效的 指针 访问,然后停止。这里有什么诀窍?如果你写。while(firstwords.m_next!=NULL ||curwords.length<pp){ curwords=GetPointer(curwords.m_next); }在'iTester 7.mq5'中 错误地移动了无效的指针访问(161,43)。 --- 2012.04.15 07:34 #7160 fellow: 有什么好处? curwords = NULL 1...709710711712713714715716717718719720721722723...3184 新评论 您错过了交易机会: 免费交易应用程序 8,000+信号可供复制 探索金融市场的经济新闻 注册 登录 拉丁字符(不带空格) 密码将被发送至该邮箱 发生错误 使用 Google 登录 您同意网站政策和使用条款 如果您没有帐号,请注册 可以使用cookies登录MQL5.com网站。 请在您的浏览器中启用必要的设置,否则您将无法登录。 忘记您的登录名/密码? 使用 Google 登录
全局变量也不一定要自动初始化。你可能只是 "幸运"。幸运的引号,因为这种幸运充满了随后对开发者的左翼主张的疯狂,比如 "昨天还能用,今天就不行了,你的平台不稳定......"。
来自帮助。全局变量的范围 是整个程序,全局变量可以从程序中定义的所有函数访问。它们被初始化为零,除非明确指定另一个初始值。
在你试图处理全局变量之后,就会发生这样的错误。
P.S. 你一定是被初学者的愚蠢问题弄得饥肠辘辘了,你愤怒地写下这个问题。我认为,编译器并不关心什么代码量,更多的初始化只是让它慢了几分之一秒,而测试者的策略则是另一回事。
来自帮助。全局变量的范围 是整个程序,全局变量可以从程序中定义的所有函数访问。它们被初始化为零,除非明确指定另一个初始值。
下面还有一个链接也请看 变量初始化。
任何变量在定义时都可以被初始化。如果该变量没有被明确初始化,存储在该变量中的值可以是任何东西。 不进行隐式初始化。
初始化为零,除非明确指定其他初始值。
不进行隐式初始化。
我不知道该相信什么。如果没有明确指定数值,它们要么被初始化为零,要么不进行隐式初始化。或其他一般的东西)
我甚至不知道该相信什么。如果没有明确设置数值,它就被初始化为0,或者它没有被隐式初始化。或其他一般的东西)。
你不能相信任何人。你可以相信我。
为什么要把编程文化的问题变成一个信仰问题?你不做显式初始化?缺陷迟早会找上你(不一定是在mt5中)。
你不能相信任何人。我可以 (c) Müller
为什么要把编程文化的问题变成一个信仰问题?你不做显式初始化?缺陷迟早会找上你(不一定是在mt5中)。
让我们依靠直觉。你也许可以擦掉我最后的帖子,没有什么可谈的。
为什么在如此微妙的问题上要依靠直觉?
只要明确地初始化你的所有变量。在某些情况下,不必要的初始化问题只与那些挤压时钟周期以节省微秒的专业人士有关。
建立630
ArrayResize()函数(ArraySetAsSeries()=true)在数组大小减少时删除了一个错误的项目。
它删除了索引为0的项目,而它应该是数组的 最后一个项目,即索引为(n-1),其中n是数组的大小。
在2011年秋季的构建中,一切工作正常。
当ArraySetAsSeries()=true时,减少数组大小时ArrayResize()出错。
从数组的错误一侧删除元素。
curwords=GetPointer(firstwords);
Print("next======",curwords.m_next!=NULL);
while(curwords.m_next!=NULL|curwords.length<pp){ curwords=GetPointer(curwords.m_next); }
当测试一个突出显示的字的EA时,在'iTester 7.mq5'(161,16)中 错误指示无效的 指针 访问,然后停止。
这里有什么诀窍?
如果你写。while(firstwords.m_next!=NULL ||curwords.length<pp){ curwords=GetPointer(curwords.m_next); }在'iTester 7.mq5'中 错误地移动了无效的指针访问(161,43)。
fellow:
有什么好处?