007:13:36.398'21035322': login datacenter on RoboForex-Pro through DataCenter Europe #3 (ping: 53.56 ms)
007:13:36.802'21035322': previous successful authorization performed from87.110.24.238109:12:42.982'21035322': ping failed
009:12:43.690'21035322': login on RoboForex-Pro through DataCenter Europe #3 (ping: 53.56 ms)
009:12:44.907'21035322': login datacenter on RoboForex-Pro through DataCenter Europe #3 (ping: 53.56 ms)
009:12:45.317'21035322': previous successful authorization performed from87.110.24.238109:12:58.925'21035322': datacenter connecting failed [6]
009:12:59.475'21035322': login on RoboForex-Pro through DataCenter Europe #3 (ping: 53.56 ms)
009:13:02.919'21035322': ping to current access point DataCenter Europe #3is48.62 ms
009:13:59.826'21035322': login datacenter on RoboForex-Pro
009:14:05.639'21035322': login on RoboForex-Pro through DataCenter Europe #5 (ping: 68.86 ms)
009:14:06.482'21035322': login datacenter on RoboForex-Pro through DataCenter Europe #5 (ping: 68.86 ms)
009:14:07.048'21035322': previous successful authorization performed from87.110.24.238009:14:17.958'21035322': ping to current access point DataCenter Europe #5is89.81 ms
111:12:31.864'21035322': ping failed
111:12:31.864'21035322': datacenter connecting failed [6]
class A
{
protected:
template <typename T>
void f( const T* ) {Print(typename(T));}
};
class B : public A
{
public:
void f( const B* b )
{
A::f(b);
}
};
voidOnStart()
{
B b;
b.f(&b);
}
class A
{
protected:
staticvoid f( const A* ) { Print(__FUNCSIG__); }
template <typename T>
void f( const T* ) {Print(typename(T));} // Почему B?
};
class B : public A
{
public:
void f( const A* a )
{
A::f(a); // как вызвать static-метод?
}
};
voidOnStart()
{
B b;
b.f(&b); // deprecated behavior, hidden method calling will be disabled in a future MQL compiler version
}
こんにちは! あるブローカーは、常に(1日に1〜2回)MarketInfo()が飛んで、値0(具体的にはMODE_MARGINREQUIRED)を取得することである。それはある意味正常ですが、同時にiCustom()インジケータに到達しようとする試みがありません(リソースを通じて接続されています)。MarketInfo()がデータを受信しても、iCustom()は沈黙したままである。端末を再起動するのみで、解決します。ターミナルを再起動せずにインジケーターにアクセスする方法、何かいい方法はないでしょうか?どこかのリソースからインジケーターが消えることはないのでしょうか?
1ヶ月間、あらゆる種類のテストを行った結果、問題があると自信を持って言えますが、ただ、リソースが足りないのか、iCustom()が壊れているのかが分かりません。この問題は、あるブローカーでのみ検出され、実際の取引には非常に不都合です。MT4やMQLそれはバグだという言葉を投げかける前に、最新で最も簡単なコードとテスト実行をお見せします。また、その結果を掲載します。もしかしたら、私のコードにバグがあるのかもしれません。もう一度言いますが、問題が検出されるのは1つのブローカーだけです(ログブックに記載されています)。
指標となる。
専門家
インジケーターの最新データを受信する。
インジケーターが反応しなくなった。
専門家によるログ
この時のMT4ログ。
1ヶ月間、あらゆる種類のテストを行った結果、問題があると自信を持って言えますが、ただ、リソースが足りないのか、iCustom()が壊れているのかが分かりません。この問題は、あるブローカーでのみ検出され、実際の取引には非常に不都合です。MT4やMQLそれはバグだという言葉を投げかける前に、最新で最も簡単なコードとテスト実行をお見せします。また、その結果を掲載します。もしかしたら、私のコードに誤りがあるのかもしれません。もう一度言いますが、問題が検出されるのは1つのブローカーだけです(ログブックに記載されています)。
指標となる。
専門家
インジケーターの最新データを受信する。
インジケーターが反応しなくなった。
専門家によるログ
この時のMT4ログ。
iCustomから呼び出されるインジケータのTimeCurrent() が再ログインで動かなくなる?
なぜインジケータにTimeCurrent()が必要なのですか?
時系列(time[]、open[]など)は更新されているか?
iCustomから呼び出されるインジケーターのTimeCurrent()は、再ログインすると動作しなくなるのでしょうか?
インジケーターのTimeCurrent()は何のためにあるのですか?
時系列(time[]、open[]など)は更新されているか?
もうインジケーターがないかのように、すべてが動かなくなる。TimeCurrent() は、確認するためだけに、最後の時間。インジケータが反応しなくなっただけで、(time[]、open[]などではなく)何も動作しません。これがインジケーターからの最後のプリントで、これ以上はありません。
MQL4の制限を 回避するためには、このように書くしかないのです。
宗教は確かに良いものですが(明示的にこれという意味です※)、教会に置いておいた方が良いのです。
その方が簡潔でいいと思います。
宗教は確かに良いものですが(明示的にこれという意味です※)、教会に任せた方が良いのではと思います。
その方が簡潔でいいと思います。
これは5歳以下です。
開発者に聞く:なぜテンプレートメソッドがプロテクトゾーンから呼び出されるのですか?
UPD: これはコンパイラがコールで代用するもので、B::f(const A*) ではありません。
開発中止となったMQL4コンパイラのバグを回避するのに役立ちます。
検索文字列:オシブタ021。
開発中止となったMQL4コンパイラのバグを回避するのに役立ちます。
MQL4はこのようにコンパイルされます。
UPDです。
基本的にtypename T2がなくてもコンパイル可能です。
MQL4ではこのようにコンパイルされます。
UPDです。
基本的にtypename T2がなくてもコンパイル可能です。
ありがとうございました。