//Test.cpp#include "Test.h"#ifdef MACRO //не подсвечивается... но этот .cpp файл не предназначен для компиляции в MetaEditor,//а компилируется в С\С++, где макрос __MQL__ не является предопределенным//в результате подсвечивается то что не должно и наоборот не подсвечивается что должно#endif
Директива #define подставляет expression вместо всех последующих найденных вхождений identifier в исходном тексте. identifier заменяется только в том случае, если он представляет собой отдельный токен. identifier не заменяется, если он является частью комментария, частью строки, или частью другого более длинного идентификатора. expression...
すべて正常範囲内...
以前、インジケータがファイルからデータを配列に読み込むときに似たようなことがありましたが、今は思い出せません...。
を待つオーダーを作成。
端末のバージョンとビットモード
64 1755
問題の内容
インジケーターのアンロードをしない。
インジケータをインストールするとインジケータが動作し、インジケータを削除すると削除され、リストにはありませんが、削除されていないかのようにオブジェクトを描画し、動作します。
チャートを開き直すと、別のシンボルのチャートでも動作しています。
コンパイル時のエラー
#define \ MACROまた、ALLディレクティブで改行が機能することが期待されたを待つオーダーを作成。
端末のバージョンとビットモード
64 1755
問題の内容
インジケーターのアンロードをしない。
インジケータをインストールするとインジケータが動作し、インジケータを削除すると削除され、リストにはありませんが、削除されていないかのようにオブジェクトを描画し、動作します。
チャートを開き直すと、別の楽器のチャートでも動作します。
同じ問題
同じ問題
再帰性?
同じ問題
IndicatorRelease()。
コンパイル時のエラー
添付ファイルのコンパイルが必要
そんな「空間」をどこで手に入れたのだろう。ここhttps://www.mql5.com/ru/docs/check/terminalinfointeger、たくさんあります。Microsoft Edgeでフラグメントをマウスでコピーしてみました
紛らわしいマクロのハイライト - コンテキストに依存しない
常時存在(選択肢B)または常時不在(選択肢A)
特定の文字列でマクロが定義されている場合はハイライトされ、定義されていない場合はハイライトされないと予想された。そうでなければ、ハイライトの有無が何を意味するのかがわからないMetaEditorでC2C++ファイルをハイライト表示する。
https://www.mql5.com/ru/docs/basis/preprosessor/constant
これらのマクロ(および __MQL__ )は、.c、cpp、.h 拡張子のファイルをハイライトする際には利用できないものとします。
これは、(前回と同様に)誤った、誤解を招くような強調表示は、それがない場合よりもはるかに悪い場合です。
MetaEditorに_WIN64のような定義済みマクロがないことについて、ユーザーのフォーラムで繰り返し議論に遭遇しています。MetaEditorは32-64ビットのユニバーサルコードを同時に生成するので必要ない、というのが運営側の回答だった。
同時に、多くの人がhttps://www.mql5.com/ru/forum/225498/page2#comment_6401835 の アライメントを構造体にフィールドを付加して使っています
そして実際、既製の.dll(もう変更できない)を使用する場合、追加のアライメントなしではやっていけないのです。しかし、x86 と x64 では、この追加部分が異なって見えるかもしれません。つまり、TerminalInfoInteger( TERMINAL_X64 ) が動作しない .mq5 ファイルのコンパイル段階で構造体が定義されているので、_WIN64 アナログがまだ必要なのです。
あとは、余計な情報を入れないことです。些細なことを節約した結果、エラい目に遭う危険性がある