来自一个 "傻瓜 "的问题 - 页 117 1...110111112113114115116117118119120121122123124...277 新评论 Yedelkin 2012.03.16 20:34 #1161 meneo:这怎么可能呢?(见变量k的计算和调试模式下所有变量的值)这很简单。lparam是长类型(整数),wdpix是int类型(整数)。lparam/wdpix是私有长类型(整数)。由于lparam < wdpix,lparam/wdpix ==0。参见MQL5参考/ 语言基础知识/ 数据类型/ 类型转换 --- 2012.03.17 09:16 #1162 meneo:你如何解释图表上相邻柱状体之间的空隙? 如果你看到它,请联系服务台并告知他们有关错误。 meneo 2012.03.17 11:16 #1163 谢谢大家!) meneo 2012.03.17 11:17 #1164 你能看出哪个专家在另一个窗口中运行吗? Vladimir Gomonov 2012.03.17 11:34 #1165 meneo: 你能看出哪个专家顾问在另一个窗口中运行吗? 这似乎是不可能的(如果我没有错过什么的话)。 但是,将自己的人与 "其他人""区分 "开来是可能的。如果项目 中有几个程序,你可以通过自定义消息指定它们的礼节性交换协议。他们应该打招呼,摘下帽子,翻出口袋,等等。 meneo 2012.03.17 11:37 #1166 是否也可以通过枚举的方式进行枚举像这样?for (int i =PERIOD_M1;i<=PERIOD_D;i++) Документация по MQL5: Стандартные константы, перечисления и структуры / Константы графиков / Периоды графиков www.mql5.com Стандартные константы, перечисления и структуры / Константы графиков / Периоды графиков - Документация по MQL5 Vladimir Gomonov 2012.03.17 11:43 #1167 meneo:是否也可以通过枚举的方式进行枚举像这样?for (int i =PERIOD_M1;i<=PERIOD_D;i++)这是不可能的。关于这个--我应该试试。 for (ENUM_TIMEFRAMES i = PERIOD_M1;i<=PERIOD_D;i++) {}虽然 "理论上 "有机会,但我怀疑这不会成功。:) Vladimir Gomonov 2012.03.17 11:47 #1168 嗯,我试过了。void OnStart() { //--- for (ENUM_TIMEFRAMES i = PERIOD_M1;i<=PERIOD_D;i++) { Print(EnumToString(i));} } //+------------------------------------------------------------------+ 甚至不愿意编译。'ForEnum.mq5' ForEnum.mq5 1 1'i' - 意外令牌 ForEnum。mq5 15 25'i' - 未声明的标识符 ForEnum.mq5 15 25'PERIOD_D' - 未声明的标识符 ForEnum。mq5 15 42'i' - EnumToString的参数必须是一个枚举ForEnum。mq5 15 77 4个错误(s), 0个警告(s) 5 1但似乎没有什么违法之处。 --- 2012.03.17 11:56 #1169 MetaDriver:我试过了。程序员甚至不愿意进行编译。而且似乎没有任何违法之处。为了使用枚举,你可能至少应该添加以下这些函数enum::GetName 和enum::GetValue和foreach 语言结构然后,枚举将由MQL自动进行。 Vladimir Gomonov 2012.03.17 12:04 #1170 当然,这也是可行的。#property script_show_inputs input ENUM_TIMEFRAMES P = PERIOD_D1; //+------------------------------------------------------------------+ //| Script program start function | //+------------------------------------------------------------------+ void OnStart() { //--- for (int i = PERIOD_M1;i<=P;i++) // { Print(EnumToString(ENUM_TIMEFRAMES(i)));} { string S=EnumToString(ENUM_TIMEFRAMES(i)); if (StringGetCharacter(S,0)=='P') {{{{ Print(S); }}}} } }最棒的是--它并没有说P是一个意外的标记 或未声明的标识符 相反,作为一个普通客户,它提供了所有的便利。奇怪的.....;) 1...110111112113114115116117118119120121122123124...277 新评论 您错过了交易机会: 免费交易应用程序 8,000+信号可供复制 探索金融市场的经济新闻 注册 登录 拉丁字符(不带空格) 密码将被发送至该邮箱 发生错误 使用 Google 登录 您同意网站政策和使用条款 如果您没有帐号,请注册 可以使用cookies登录MQL5.com网站。 请在您的浏览器中启用必要的设置,否则您将无法登录。 忘记您的登录名/密码? 使用 Google 登录
这怎么可能呢?(见变量k的计算和调试模式下所有变量的值)
这很简单。lparam是长类型(整数),wdpix是int类型(整数)。lparam/wdpix是私有长类型(整数)。由于lparam < wdpix,lparam/wdpix ==0。
参见MQL5参考/ 语言基础知识/ 数据类型/ 类型转换
你如何解释图表上相邻柱状体之间的空隙?
你能看出哪个专家顾问在另一个窗口中运行吗?
是否也可以通过枚举的方式进行枚举
像这样?
for (int i =PERIOD_M1;i<=PERIOD_D;i++)
是否也可以通过枚举的方式进行枚举
像这样?
for (int i =PERIOD_M1;i<=PERIOD_D;i++)
这是不可能的。
关于这个--我应该试试。
虽然 "理论上 "有机会,但我怀疑这不会成功。:)
嗯,我试过了。
甚至不愿意编译。
'ForEnum.mq5' ForEnum.mq5 1 1
'i' - 意外令牌 ForEnum。mq5 15 25
'i' - 未声明的标识符 ForEnum.mq5 15 25
'PERIOD_D' - 未声明的标识符 ForEnum。mq5 15 42
'i' - EnumToString的参数必须是一个枚举ForEnum。mq5 15 77
4个错误(s), 0个警告(s) 5 1
但似乎没有什么违法之处。
我试过了。
程序员甚至不愿意进行编译。
而且似乎没有任何违法之处。
为了使用枚举,你可能至少应该添加以下这些函数
enum::GetName 和enum::GetValue
和foreach 语言结构
然后,枚举将由MQL自动进行。
当然,这也是可行的。
最棒的是--它并没有说P是一个意外的标记 或未声明的标识符
相反,作为一个普通客户,它提供了所有的便利。
奇怪的.....;)