エラー、バグ、質問 - ページ 2705

 
fxsaber:

対応するインクルードが作られたソースの場所を探す方法を教えてください。

どうやら今のところサードパーティか自作しか手段がないようです。例えば、私のパーカー プログラムやMQL分析に関する 記事を利用することができます。そこでデータを収集し、ログなどに出力する必要があります。しかし、デフィニションはそこでは扱われません。

その他、一目でわかるアナライザーとして、lint、doxygenがあります。

MQL5 Program Packer
MQL5 Program Packer
  • www.mql5.com
This script allows you to assemble a zip-file of your MQL5-program with all dependencies automatically. The dependencies are: included source files via #include directive (both modes of absolute () and relative ("") references are supported); icons linked by #property icon directive; resources (images, sounds, and other types) embedded by...
 
開発者への提案。
リファクタリング中に各ファイルを調べて発生を検索するのはあまり良くないので、MEに現在のプロジェクトによる検索/置換を追加しました。
 
Sergey Dzyublik:

手作業のみ。
空欄のFile、Line、Columnにインクルード元のソースファイルの関連情報を記入するよう、開発者に提案することができる。

PKMのメニューから、以下のことを行いたいと思います。


スタニスラフ・コロツキー

どうやら今のところサードパーティ製か自作ツールだけのようです。例えば、私のパーカー プログラムやMQL分析に関する 記事を例にとります。データはそこに集まっているので、ログなどに出力すればいいだけです。しかし、デフィニションはそこでは扱われません。

他に思いつく分析器としては、lint、doxygenがあります。

そんな可能性を、先生の素晴らしいツールで知ることができました。残念ながら、1つのmqhが何度も出てくるので、必要なinclude-stringを見つけることができないことがあります。そして、ビルド時にその最初のインクルージョンが必要です。

 

Build 2380 のバグ ME 機能の置換(Strl + H)は、「選択されたテキストのみ」と「検索アップ」を有効にした場合、コード全体ではなく、必要なアプリケーション部分がハイライトされるときに機能しない。
再現するための一連の動作。

void Increment(int &n){
   ++n;
};

void test(){
   int n = 0;
   for(int i = 0; i < 100; ++i){
      DebugBreak();
      Increment(n);
   }  
}

void OnStart(){
   test();
}


1.コードを挿入 し、マウスで指定した部分を選択し、置換(Ctrl + H)を開きます。
2. 「選択したテキストのみ」と「上まで検索」を有効にする。
3.test "を挿入する場合は、"best "で置き換え、"すべて置き換え "を適用します。
結果:何も見つかりませんでした。
期待される結果: "test "を "best "に置き換える。


ファイル:
 
これは、私がMEで 問題に遭遇した2回目です - スレッドの1つがプロセッサを100%ロードしています。
同時に、すべてがMEで適切に動作しています。
MEを閉じると、プロセスがハングアップしてプロセッサに負荷をかけ続けるので、手動で終了させる必要があります。
中規模プロジェクト(Intel 7700-HQで3秒)では、バックグラウンドコンパイルとマニュアルコンパイルの間に競合条件があるのかもしれませんね...。
 
fxsaber:

このような可能性を、先生の素晴らしいツールで実感しています。残念ながら、同じmqhが複数回存在することがあるため、正しいインクルード文字列を見つけることができない場合があります。そして、ビルド時にその最初の組み込みが必要です。

最初に検出されるインクルージョンです。ファイルの探索順序は、条件付きコンパイルに干渉されない限り、ビルドのときと同じになります。

私は通常、正しいmqhファイルの名前を変更することで、コンパイル時に問題がある箇所を表示します。

 
Stanislav Korotky:

私は通常、単純なことですが、正しいmqhファイルの名前を変更すると、コンパイルしようとしたときにヒッチがどこにあるかが示されます。

メソッドをありがとうございますENTERでソースmqhに行き、ALT+Nを押し、名前を変え、F7を押すというアルゴリズムです。

 
バグ ME (build 2380) コンパイルエラーの記述が256文字制限に収まらず切り捨てられ、結果として必要な部分が切り捨てられたため、どのデータ型に対してエラーが発生したのかが分からなくなりました。


開発者への提案としては、少なくとも512文字に制限を増やすか、ファイルにログを記録するか、詳細を別ウィンドウで提供することを検討することです。
 
Sergey Dzyublik:
バグ ME (build 2380) コンパイルエラーの記述が256文字制限に収まらず切り捨てられ、その結果、必要な部分が切り捨てられ、どのデータ型に対してエラーが発生したのかがわからなくなりました。


開発者への提案としては、少なくとも512文字に制限を増やすか、ファイルにログを記録するか、詳細を別ウィンドウで提供することを検討することです。
PKM --> View でログを見ると、そこでも切り捨てられているのでしょうか?
 
Artyom Trishkin:
PCM --> View でログを見た場合、そこでもクリップされているのでしょうか?

それが問題で、MEの「エラー」タブにはログブックがないのです。