错误、漏洞、问题 - 页 1570 1...156315641565156615671568156915701571157215731574157515761577...3184 新评论 A100 2016.05.02 16:55 #15691 需要细化模板(在A类{}之外采取实现)。template<typename T> class A { public: template<typename T2> void f1( T2 t2 ); template<typename T2> void f2( T2 t2, T tt ) { Print( __FUNCSIG__, " ", typename( this.t ) ); } template<typename T2> void f3( T2 t2, T tt ); T t; }; template<typename T> template<typename T2> void A::f1( T2 t2 ) { Print( __FUNCSIG__, " ", typename( this.t ) ); } //нормально template<typename T> template<typename T2> void A::f3( T2 t2, T tt ) { Print( __FUNCSIG__, " ", typename( this.t ) ); } // error: 'T' - declaration without type 我不能在A {}类之外实现A::f3。但在A类{}里面,你可以。是的,你可以...例如,f2(),但不便之处在于在A {}类之外采取繁琐的函数的目的。最主要的是,A::f1()可以被带入类A {}内,并且一切正常,而A::f3()却不能--编译器产生了错误。 TheXpert 2016.05.02 17:22 #15692 不,那是一个婊子,顺便说一句,一个类型化的定义应该能解决这个问题 Andrey Barinov 2016.05.02 17:22 #15693 A100:需要细化模板(在A类{}之外采取实现)。我不能在A {}类之外实现A::f3。但在A类{}里面,你可以。是的,你可以...例如,f2(),但不便之处在于在A {}类之外采取繁琐的函数的目的。最主要的是,A::f1()可以被带到A {}类之外,并且一切正常,而A::f3()不能--编译器会产生一个错误,因为A::f1()和A::f3()原则上没有任何区别。这就是它的正常编译方式。template<typename T> class A { public: template<typename T2> void f1( T2 t2 ); template<typename T2,typename T> void f2( T2 t2, T tt ) { Print( __FUNCSIG__, " ", typename( this.t ) ); } template<typename T2,typename T> void f3( T2 t2, T tt ); T t; }; template<typename T2> void A::f1( T2 t2 ) { Print( __FUNCSIG__, " ", typename( this.t ) ); } //????????? template<typename T2,typename T> void A::f3( T2 t2, T tt ) { Print( __FUNCSIG__, " ", typename( this.t ) ); } //error: 'T' - declaration without type 而f1和f3则有些不同 A100 2016.05.02 18:29 #15694 Andrey Barinov:这就是它的正常编译方式。不是的--编译器只是假设没有OnStart--没有问题。增加void OnStart() { A<long> a; } A100 2016.05.02 21:45 #15695 编译错误: 内部错误#9 附加的文件: Test114.mq5 3 kb A100 2016.05.02 21:50 #15696 如果你改变了几行,错误就变成了:树形优化错误但最初(简化前)的错误是:代码生成错误一切都在这里结束了--但在这之前,一切都运作良好。 附加的文件: Test115.mq5 3 kb [删除] 2016.05.02 22:27 #15697 A100:在一个档案库中制作大量不同的苗条来源。这样,开发人员就可以在他们要推出另一个有问题的构建之前使用它。将档案称为 "虱子测试"。当然,不同种类的编译器都有这样的测试变体。 A100 2016.05.02 23:36 #15698 编译错误: 代码生成错误 附加的文件: Test116.mq5 2 kb Vladimir Gomonov 2016.05.03 00:33 #15699 由于标准值计算不正确,优化图表 停止绘制。 请修复它,因为在图表上观察优化过程非常方便。 只出现在平衡+最大射频 标准上。// 至少在我的(迄今为止的小规模)实践中是这样。//只有图形断裂,优化成功。----------- UPDПроявляется только на критерии Balance + max RF. 我错了。 A100 2016.05.03 10:07 #15700 &和GetPointer 的不同行为class A {}; class B { A *f() const { return GetPointer( a ); } //не генерирует ошибки A *g() const { return &a; } //ошибка: 'return' - cannot convert from const pointer to nonconst pointer A a; }; 1...156315641565156615671568156915701571157215731574157515761577...3184 新评论 您错过了交易机会: 免费交易应用程序 8,000+信号可供复制 探索金融市场的经济新闻 注册 登录 拉丁字符(不带空格) 密码将被发送至该邮箱 发生错误 使用 Google 登录 您同意网站政策和使用条款 如果您没有帐号,请注册 可以使用cookies登录MQL5.com网站。 请在您的浏览器中启用必要的设置,否则您将无法登录。 忘记您的登录名/密码? 使用 Google 登录
需要细化模板(在A类{}之外采取实现)。
我不能在A {}类之外实现A::f3。
但在A类{}里面,你可以。是的,你可以...例如,f2(),但不便之处在于在A {}类之外采取繁琐的函数的目的。最主要的是,A::f1()可以被带入类A {}内,并且一切正常,而A::f3()却不能--编译器产生了错误。
需要细化模板(在A类{}之外采取实现)。
我不能在A {}类之外实现A::f3。
但在A类{}里面,你可以。是的,你可以...例如,f2(),但不便之处在于在A {}类之外采取繁琐的函数的目的。最主要的是,A::f1()可以被带到A {}类之外,并且一切正常,而A::f3()不能--编译器会产生一个错误,因为A::f1()和A::f3()原则上没有任何区别。
这就是它的正常编译方式。
而f1和f3则有些不同
这就是它的正常编译方式。
不是的--编译器只是假设没有OnStart--没有问题。
增加
编译错误: 内部错误#9
如果你改变了几行,错误就变成了:树形优化错误
但最初(简化前)的错误是:代码生成错误
一切都在这里结束了--但在这之前,一切都运作良好。
在一个档案库中制作大量不同的苗条来源。这样,开发人员就可以在他们要推出另一个有问题的构建之前使用它。
将档案称为 "虱子测试"。当然,不同种类的编译器都有这样的测试变体。
由于标准值计算不正确,优化图表 停止绘制。 请修复它,因为在图表上观察优化过程非常方便。
只出现在平衡+最大射频 标准上。// 至少在我的(迄今为止的小规模)实践中是这样。
//只有图形断裂,优化成功。
----------- UPD
Проявляется только на критерии Balance + max RF.
我错了。
&和GetPointer 的不同行为