初学者的问题 MQL5 MT5 MetaTrader 5 - 页 1320 1...131313141315131613171318131913201321132213231324132513261327...1503 新评论 Alexey Viktorov 2021.06.28 09:34 #13191 pivomoe:升级到2981版本后,开始出现一个错误,在行中请告知如何替换这条线路。 关于交易、自动交易系统和交易策略测试的论坛 mql5的特殊性,技巧和窍门 伊利亚斯, 2021.05.28 18:18 我们正在扩大我们的初始化序列"{ ...在下一个版本中,我们将允许使用任何表达式,而不仅仅是常量。 取而代之的是,在为枚举使用常量时将有一个限制(就像对普通表达式一样):如果常量不属于枚举,将产生相应的错误。 对现有代码的分析表明,单零序列"{0}"经常被错误地使用。 例如,像这样。 MqlTradeRequest request={0}; 这样的符号意味着为结构的第一个字段设置零值,并将其余的字段置零。 对于上述代码行,根据新的规则,会有一个错误,因为第一个字段的类型是 ENUM_TRADE_REQUEST_ACTIONS,这个枚举缺乏值 "0"。 cannot convert 0 to enum 'ENUM_TRADE_REQUEST_ACTIONS' 正确的方法应该是。 MqlTradeRequest request={}; pivomoe 2021.06.28 10:32 #13192 谢谢你。 Kira27 2021.06.28 11:02 #13193 Kira27:所以我在写 -- 我应该从哪个类继承我的类来 使用他们标准库中的这些方法? 我的问题有什么问题?)))) Kira27 2021.06.28 12:21 #13194 这是代码,有什么问题吗? //+------------------------------------------------------------------+ //| Test_Nasledovania.mqh | //| Copyright 2021, MetaQuotes Ltd. | //| https://www.mql5.com | //+------------------------------------------------------------------+ #property copyright "Copyright 2021, MetaQuotes Ltd." #property link "https://www.mql5.com" #property version "1.00" #include <Object.mqh> #include <Trade\Trade.mqh> //+------------------------------------------------------------------+ //| | //+------------------------------------------------------------------+ class Test_Nasledovania : public CObject { private: public: Test_Nasledovania(); ~Test_Nasledovania(); void test(); }; //+------------------------------------------------------------------+ //| | //+------------------------------------------------------------------+ Test_Nasledovania::Test_Nasledovania() { } //+------------------------------------------------------------------+ //| | //+------------------------------------------------------------------+ Test_Nasledovania::~Test_Nasledovania() { } //+------------------------------------------------------------------+ //+------------------------------------------------------------------+ //| | //+------------------------------------------------------------------+ void Test_Nasledovania::test() { Buy -- Метод Buy не высвечивается как подключеный } //+------------------------------------------------------------------+ 该课程包括 Test_Nasledovania : public CObject类本身就是整个标准库的基类CObject 的继承者)。 Vladimir Karputov 2021.06.28 12:34 #13195 Kira27:这是代码,有什么问题吗?该课程包括Test_Nasledovania : public CObject类本身是整个标准库的CObject 基类的继承者)。 除了连接交易类之外,你还需要创建一个交易类的对象,然后通过创建的对象 来引用该类的方法 *** #include <Trade\Trade.mqh> //--- CTrade m_trade; // object of CTrade class *** void OnTick() { m_trade.Buy(*** } Artyom Trishkin 2021.06.28 12:35 #13196 Kira27:我的问题有什么问题?)))) 因为帮助中白纸黑字地写着所有这些类的整个继承关系。 Kira27 2021.06.28 16:20 #13197 Vladimir Karputov:除了连接一个交易类,你还需要创建这个交易类的一个对象,然后通过创建的对象 引用该类的方法。 关于在Expert Advisors和脚本中使用类方法的问题,当然是创建对象。 但问题是关于在子类中使用基类的方法,。为什么我们需要在那里创建对象? Artyom Trishkin 2021.06.28 16:30 #13198 Kira27:关于使用类的方法,在Expert Advisors和脚本中,不言而喻,我们会创建对象。 但问题是关于在一个子类中使用基类的方法。为什么你需要在那里创建对象? 你已经从CObject 继承了你的类。 class Test_Nasledovania : public CObject 对不起,但你期望看到的是什么方法? Документация по MQL5: Стандартная библиотека / Базовый класс CObject www.mql5.com Базовый класс CObject - Стандартная библиотека - Справочник MQL5 - Справочник по языку алгоритмического/автоматического трейдинга для MetaTrader 5 Kira27 2021.06.28 16:33 #13199 下面是一个如何在继承类中使用基类的方法而不使用对象的例子 #property copyright "Copyright 2021, MetaQuotes Ltd." #property link "https://www.mql5.com" #property version "1.00" //#include <Object.mqh> #include <Trade\Trade.mqh> //+------------------------------------------------------------------+ //| | //+------------------------------------------------------------------+ class Test_Nasledovania : public CTrade { private: public: Test_Nasledovania(); ~Test_Nasledovania(); void test(); }; //+------------------------------------------------------------------+ //| | //+------------------------------------------------------------------+ Test_Nasledovania::Test_Nasledovania() { } //+------------------------------------------------------------------+ //| | //+------------------------------------------------------------------+ Test_Nasledovania::~Test_Nasledovania() { } //+------------------------------------------------------------------+ //+------------------------------------------------------------------+ //| | //+------------------------------------------------------------------+ void Test_Nasledovania::test() { Buy } //+------------------------------------------------------------------+ 我想使用所有的方法,包括在 我应该从哪个班级继承我的班级,这样我就可以在我的班级里使用所有这些班级的方法,而不需要创建对象。 如果有可能的话)))。 Открой новые возможности в MetaTrader 5 с сообществом и сервисами MQL5 www.mql5.com MQL5: язык торговых стратегий для MetaTrader 5, позволяет писать собственные торговые роботы, технические индикаторы, скрипты и библиотеки функций Kira27 2021.06.28 16:36 #13200 Artyom Trishkin:你从CObject 继承了你的类。对不起,你希望看到的是什么方法? 我同意))),我太傻了)),所有这些方法的基类,不允许使用其子类的方法)))。 1...131313141315131613171318131913201321132213231324132513261327...1503 新评论 您错过了交易机会: 免费交易应用程序 8,000+信号可供复制 探索金融市场的经济新闻 注册 登录 拉丁字符(不带空格) 密码将被发送至该邮箱 发生错误 使用 Google 登录 您同意网站政策和使用条款 如果您没有帐号,请注册 可以使用cookies登录MQL5.com网站。 请在您的浏览器中启用必要的设置,否则您将无法登录。 忘记您的登录名/密码? 使用 Google 登录
升级到2981版本后,开始出现一个错误,在行中
关于交易、自动交易系统和交易策略测试的论坛
mql5的特殊性,技巧和窍门
伊利亚斯, 2021.05.28 18:18
我们正在扩大我们的初始化序列"{ ...在下一个版本中,我们将允许使用任何表达式,而不仅仅是常量。
取而代之的是,在为枚举使用常量时将有一个限制(就像对普通表达式一样):如果常量不属于枚举,将产生相应的错误。
对现有代码的分析表明,单零序列"{0}"经常被错误地使用。
例如,像这样。
这样的符号意味着为结构的第一个字段设置零值,并将其余的字段置零。
对于上述代码行,根据新的规则,会有一个错误,因为第一个字段的类型是 ENUM_TRADE_REQUEST_ACTIONS,这个枚举缺乏值 "0"。
正确的方法应该是。
MqlTradeRequest request={};
所以我在写 -- 我应该从哪个类继承我的类来 使用他们标准库中的这些方法?
我的问题有什么问题?))))
这是代码,有什么问题吗?
该课程包括![](https://c.mql5.com/3/359/3578821118892__1.png)
Test_Nasledovania : public CObject类本身就是整个标准库的基类CObject 的继承者)。
这是代码,有什么问题吗?
该课程包括
Test_Nasledovania : public CObject类本身是整个标准库的CObject 基类的继承者)。
除了连接交易类之外,你还需要创建一个交易类的对象,然后通过创建的对象 来引用该类的方法
我的问题有什么问题?))))
因为帮助中白纸黑字地写着所有这些类的整个继承关系。
除了连接一个交易类,你还需要创建这个交易类的一个对象,然后通过创建的对象 引用该类的方法。
关于在Expert Advisors和脚本中使用类方法的问题,当然是创建对象。 但问题是关于在子类中使用基类的方法,。为什么我们需要在那里创建对象?
关于使用类的方法,在Expert Advisors和脚本中,不言而喻,我们会创建对象。 但问题是关于在一个子类中使用基类的方法。为什么你需要在那里创建对象?
你已经从CObject 继承了你的类。
对不起,但你期望看到的是什么方法?
下面是一个如何在继承类中使用基类的方法而不使用对象的例子
我想使用所有的方法,包括在![](https://c.mql5.com/3/359/2557050834480__1.png)
我应该从哪个班级继承我的班级,这样我就可以在我的班级里使用所有这些班级的方法,而不需要创建对象。 如果有可能的话)))。
你从CObject 继承了你的类。
对不起,你希望看到的是什么方法?
我同意))),我太傻了)),所有这些方法的基类,不允许使用其子类的方法)))。