class A {
public:
A( int ) { a = 2; }
A( long ) { a = 3; }
int a;
};
#define F( f, cN ) \
template<typename T> \
cN *f( T t ) { return ( new cN( t ) ); }
F( a11, A )
また、パラメトリックマクロを使用しない場合は、手動でパラメータを代入してください。
//F( a11, A )template<typename T>
A *a11( T t ) { return ( new A( t ) ); }
voidOnStart()
{
int b = 10;
A *a = a11( b );
Print( a.a );
delete( a );
}
//--- Связь с основным файлом эксперта#include "..\Main.mq5"//+------------------------------------------------------------------+//| |//+------------------------------------------------------------------+void Func()
{
Print(Nevidimka); // Теперь подсвечивается и можно перейти к месту её объявления
}
//+------------------------------------------------------------------+
また、パラメトリックマクロを使用しない場合は、手動でパラメータを代入してください。
ならいい言いようのない驚き...。MEは、メインレベルの他のプロジェクト ファイルのinludesで宣言された変数を完全に見ることができません(ハイライトされず、変数定義にジャンプすることもできません)。
いつからこんな風になったんだ?
言いようのない驚き...。MEは、メインレベルの他のプロジェクトファイルのinludesで宣言された変数を完全に見ることができません(ハイライトされず、変数定義にジャンプすることもできません)。
いつからこのような状態に?
各 "inluder "では、リンク先の他のファイルも指定する必要があります。
プロジェクトは問題なくコンパイルされます。つまり、コンパイラはすべてを見ている、つまり何がどこにあるのかを知っているのです。MEエディターはそうではない。
また、変数が宣言されて いるinluderとして、メインの実行ファイルである.mq5ファイルを指定することは、どのように考えればよいのでしょうか?
プロジェクトは問題なくコンパイルされます。つまり、コンパイラはすべてを見ている、つまり何がどこにあるのかを知っているのです。しかし、MEエディターはそうではありません。
それに、変数が宣言されて いるインラインに、メインの実行ファイルである.mq5を指定するというのはどうでしょうか?
例えば、こんな風に。
あるいは、何かできないことがあれば、簡単な例を挙げてください。より高速になります。)例えば、こんな風に。
あるいは、できないことの簡単な例を挙げてください。より速くなります。)Main.mq5
\୧⃛(๑⃙⃘◡̈๑⃙⃘)
Incl.mqh
...
Project フォルダー内のメインファイル。
ProjectInclude ディレクトリにあるプラグインファイルです。
Project フォルダー内のメインファイル。
ProjectInclude ディレクトリにあるプラグインファイルです。
この無意味なジェスチャーに何の意味があるのでしょうか?MEは変数と関数をコンパイラと全く同じように見なければならない(プログラマも)。
それに、あなたが提案することは、ほとんどの場合、不便です(プロジェクト ごとにインクルードを編集するのですか?)
各ファイルのインテリセンスは、そのスコープ内でしか機能しません。つまり、ファイル全体を、その明らかな含有物をすべて含めてスキャンするのです。
あるファイルのデータを、他の未知のファイルへのリンクなしで表示することを提案します。これは根本的に間違っています。
では、この無意味なジェスチャーは何のためなのでしょうか?MEは(プログラマは)コンパイラと全く同じように変数と関数を見なければなりません。