関数へのポインタを宣言するには、例えば、"pointer to function "という型を定義します。
typedefint (*TFunc)(int,int);
TFuncが型になり、関数へのポインタ変数を宣言することができるようになりました。
TFunc func_ptr;
関数のアドレスをfunc_ptr変数に格納しておくと、後で呼び出すことができます。
int sub(int x,int y) { return(x-y); }
int add(int x,int y) { return(x+y); }
int neg(int x) { return(~x); }
func_ptr=sub;
Print(func_ptr(10,5));
func_ptr=add;
Print(func_ptr(10,5));
func_ptr=neg; // ошибка: neg не имеет тип int (int,int)Print(func_ptr(10)); // ошибка: должно быть два параметра
正確なアドレスはわかりませんが、List of changes in MetaTrader 5 Client Terminal builds というトピックをご覧ください。
いつも見ているのですが、授業用テンプレートの導入について掲載後の新情報がないのです
はい、実はもう1年経っているんです。彼らは以前から、引数に縛られない本格的な形での関数テンプレートを有望視していた。もちろん、授業への特化は欠落しています。
少なくとも、新しいビルドでは、テンプレートでのエラーの記述が改善され、置換された型が指定されるようになりました。一気に気持ちが楽になりました。問題のある型を探すのにコード全体を断片的に調べる必要がないように、テンプレートを諦めてマクロを使用することもありました。
テンプレートが拡張されるのは良いことですが、今年導入された拡張機能はどこで読めますか?また、テンプレートのtypedefやclassの型付けは、それがないと少し荒っぽく見えて しまうところがあります。
https://www.mql5.com/ru/forum/23/page18#comment_2431727
MQL5:イベントパターンの整理を容易にするため、関数へのポインターをサポートしました。
TFuncが型になり、関数へのポインタ変数を宣言することができるようになりました。関数へのポインタを宣言するには、例えば、"pointer to function "という型を定義します。
関数のアドレスをfunc_ptr変数に格納しておくと、後で呼び出すことができます。
関数へのポインタを格納し、パラメータとして渡すことができる。クラスの非静的メソッドへのポインタを取得することはできません。
はい、これで考え方が明確になりました。
以前から要望があり、取引ありの注文だけでなく、クリアした取引も排出する(そこが恐ろしい)マスターレポートを追加で作成する予定です。
私たちはただ、行動を起こすだけでいいのです。
Navigatorの.logフォルダに.logファイルが表示されない(メニュー「すべてのファイルを表示する」-押下)。一方、[Files]フォルダーでは、.txtなど文脈に応じた拡張子を持つファイルが表示されます。
はい、特にAMDプロセッサーで問題があります(Intelではすべて問題ありません)。月曜の朝には、最新情報をお知らせします。
申し訳ありませんが、お願いします。私たちはそれを逃し、幸運にも私たちのデモに駆けつけるためのテストベータ版です。
解決策として、ベータ版の上に正式版ビルドを置く。すべてのデータが保存されます。
もうアップデートは出ているのか、それとも待ち続けた方がいいのか、教えてください。
アップデートが無音である限り
ノーアップデート
待ちましょう...。
ネット口座のポジションを変更 するには、クエリーでポジションシンボルを指定し、対応するシンボルのポジションが変更されるようにすれば十分です。ポジションチケットは省略可能です。
しかし、シンボルが指定されず、ポジションチケット(シンボルを一義的に特徴付けるもの)のみが指定された場合、OrderSend は [Invalid request] を返します。バグでしょうか?