错误、漏洞、问题 - 页 1741 1...173417351736173717381739174017411742174317441745174617471748...3184 新评论 Ilyas 2016.10.21 15:55 #17401 typename在编译时生成一个字符串,这就是为什么你需要 "拉尾巴"。 你想通过指针获得对象的 实际类型 吗? 类似于一个函数的东西。string GetPointerTypename(void *ptr); fxsaber 2016.10.21 16:09 #17402 Ilyas: 类型名在编译时生成一个字符串,这就是为什么你需要 "拉尾巴"。 你想通过指针获得实际的对象类型 吗? 类似于一个函数的东西。string GetPointerTypename(void *ptr);是的,在这里。斯坦尼斯拉夫-科罗茨基。我想让它变得更微妙。但怎么做呢?在MQL中,虚拟基方法中的tyename(this)返回基类。在C++中typeid(*this).name()的基础虚拟方法返回实际的对象类。 fxsaber 2016.10.21 16:12 #17403 fxsaber: 这是否只是简介出版物中的一项功能? 今天下午就修好了。现在它又开始了。 Yuriy Asaulenko 2016.10.21 16:22 #17404 我似乎不能把它放在一起。int a=1;//a1int b=2;//b1int aa(int a, int b){return(a+a+b+b);}返回的a和b中的一个应该是外部的/a1和/b1。它没有经过这个。 TheXpert 2016.10.21 16:30 #17405 Yuriy Asaulenko:a + :a + b + :b但一般来说,这种做法应该被打一巴掌。 Yuriy Asaulenko 2016.10.21 16:52 #17406 Комбинатор:a + :a + b + :b但在一般情况下,你应该为这种做法受到惩罚。谢谢)我手头没有C++的书。但在视觉上,我记得它似乎有这样的内容。我一定是忘了这件事。我以前从未将它用于这一目的。好吧,现在我必须到处改变变量--现在。嗯,实际上这就是它的设计目的。所以你错了。你不应该滥用它。 fxsaber 2016.10.22 10:22 #17407 当用鼠标拖动(CHARTEVENT_OBJECT_DRAG)一个图形对象OBJ_CHART时,OBJ_CHART中的当前显示间隔会被重置。请在下一个版本中删除这个重置。 fxsaber 2016.10.22 10:35 #17408 关于交易、自动交易系统和交易策略测试的论坛 虫子,虫子,问题 伊利亚斯, 2016.10.18 09:24 你为什么不在正文中包括初始化列表?形象地说,一个类对象(包括它的this)是在':'号上初始化的 那为什么呢?class A{ const int a; A() : this.a(0) {} // 'this' - struct member undefined && '.' - member(s) initialization expected// A() : a(this.a) {} // no problem}; fxsaber 2016.10.22 14:14 #17409 识别器描述财产类型图表_评论图表上的评论文本绳子图表_专家名在指定的chart_id的图表上启动的专家顾问的名称。绳子图表_脚本_名称在指定的chart_id的图表上运行的脚本的名称。绳子 在帮助中加入黑体字的只读。 Документация по MQL5: Стандартные константы, перечисления и структуры / Константы графиков / Свойства графиков www.mql5.com Стандартные константы, перечисления и структуры / Константы графиков / Свойства графиков - справочник по языку алгоритмического/автоматического трейдинга для MetaTrader 5 fxsaber 2016.10.22 16:40 #17410 大量的时间花在本地化上。EAclass CHARTOBJECT{public: const string Name; const long Chart; int GetSubWindow( void ) const { const ulong StartTime = GetMicrosecondCount(); const int Res = ObjectFind(this.Chart, this.Name); Print((string)(GetMicrosecondCount() - StartTime) + " mcs."); return(Res); } CHARTOBJECT( const ENUM_OBJECT object_type, const long chart_id = 0 ) : Name((string)MathRand()), Chart(chart_id) { ObjectCreate(this.Chart, this.Name, object_type, 0, 0, 0); } ~CHARTOBJECT( void ) { if (this.GetSubWindow() != -1) ObjectDelete(this.Chart, this.Name); } long GetProperty( const ENUM_OBJECT_PROPERTY_INTEGER Property, const int Modifier = 0 ) const { return(ObjectGetInteger(this.Chart, this.Name, Property, Modifier)); }}; CHARTOBJECT Chart(OBJ_CHART); CHARTOBJECT* Bitmap;void OnInit(){ Bitmap = new CHARTOBJECT(OBJ_BITMAP_LABEL, Chart.GetProperty(OBJPROP_CHART_ID));}void OnDeinit( const int Reason ){ Bitmap.GetSubWindow(); delete Bitmap;}在你把它从图表中删除后,会有一个日志输出2016.10.22 19:35:51.362 Test9 (AUDCAD,M1) Abnormal termination2016.10.22 19:35:48.351 Test9 (AUDCAD,M1) 3005619 mcs.三秒钟后,它就被取出来了。仅在发布版本中转载。调试期间一切正常。请与自己确认。在脚本模式下,播放它没有工作。只有EA。 MetaEditor build 1463 Errors, bugs, questions MetaEditor build 1463 1...173417351736173717381739174017411742174317441745174617471748...3184 新评论 原因: 取消 您错过了交易机会: 免费交易应用程序 8,000+信号可供复制 探索金融市场的经济新闻 注册 登录 拉丁字符(不带空格) 密码将被发送至该邮箱 发生错误 使用 Google 登录 您同意网站政策和使用条款 如果您没有帐号,请注册 可以使用cookies登录MQL5.com网站。 请在您的浏览器中启用必要的设置,否则您将无法登录。 忘记您的登录名/密码? 使用 Google 登录
你想通过指针获得对象的 实际类型 吗?
类似于一个函数的东西。
类型名在编译时生成一个字符串,这就是为什么你需要 "拉尾巴"。
你想通过指针获得实际的对象类型 吗?
类似于一个函数的东西。
是的,在这里。
斯坦尼斯拉夫-科罗茨基。
我想让它变得更微妙。但怎么做呢?在MQL中,虚拟基方法中的tyename(this)返回基类。在C++中typeid(*this).name()的基础虚拟方法返回实际的对象类。
这是否只是简介出版物中的一项功能?
我似乎不能把它放在一起。
int b=2;//b1
int aa(int a, int b)
{
return(a+a+b+b);
}
返回的a和b中的一个应该是外部的/a1和/b1。它没有经过这个。
a + :a + b + :b
但一般来说,这种做法应该被打一巴掌。
a + :a + b + :b
但在一般情况下,你应该为这种做法受到惩罚。
谢谢)我手头没有C++的书。但在视觉上,我记得它似乎有这样的内容。我一定是忘了这件事。我以前从未将它用于这一目的。好吧,现在我必须到处改变变量--现在。
嗯,实际上这就是它的设计目的。所以你错了。你不应该滥用它。
当用鼠标拖动(CHARTEVENT_OBJECT_DRAG)一个图形对象OBJ_CHART时,OBJ_CHART中的当前显示间隔会被重置。
请在下一个版本中删除这个重置。
关于交易、自动交易系统和交易策略测试的论坛
虫子,虫子,问题
伊利亚斯, 2016.10.18 09:24
你为什么不在正文中包括初始化列表?形象地说,一个类对象(包括它的this)是在':'号上初始化的{
const int a;
A() : this.a(0) {} // 'this' - struct member undefined && '.' - member(s) initialization expected
// A() : a(this.a) {} // no problem
};
识别器
描述
财产类型
图表_评论
图表上的评论文本
绳子
图表_专家名
在指定的chart_id的图表上启动的专家顾问的名称。
绳子
图表_脚本_名称
在指定的chart_id的图表上运行的脚本的名称。
绳子
大量的时间花在本地化上。EA
{
public:
const string Name;
const long Chart;
int GetSubWindow( void ) const
{
const ulong StartTime = GetMicrosecondCount();
const int Res = ObjectFind(this.Chart, this.Name);
Print((string)(GetMicrosecondCount() - StartTime) + " mcs.");
return(Res);
}
CHARTOBJECT( const ENUM_OBJECT object_type, const long chart_id = 0 ) :
Name((string)MathRand()), Chart(chart_id)
{
ObjectCreate(this.Chart, this.Name, object_type, 0, 0, 0);
}
~CHARTOBJECT( void )
{
if (this.GetSubWindow() != -1)
ObjectDelete(this.Chart, this.Name);
}
long GetProperty( const ENUM_OBJECT_PROPERTY_INTEGER Property, const int Modifier = 0 ) const
{
return(ObjectGetInteger(this.Chart, this.Name, Property, Modifier));
}
};
CHARTOBJECT Chart(OBJ_CHART);
CHARTOBJECT* Bitmap;
void OnInit()
{
Bitmap = new CHARTOBJECT(OBJ_BITMAP_LABEL, Chart.GetProperty(OBJPROP_CHART_ID));
}
void OnDeinit( const int Reason )
{
Bitmap.GetSubWindow();
delete Bitmap;
}
在你把它从图表中删除后,会有一个日志输出
2016.10.22 19:35:48.351 Test9 (AUDCAD,M1) 3005619 mcs.
三秒钟后,它就被取出来了。仅在发布版本中转载。调试期间一切正常。
请与自己确认。在脚本模式下,播放它没有工作。只有EA。