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

 
Ilyas:

初期化されていない配列にどんなデータが入っていても、いつデータが変わってもおかしくない、誰もその値を保証してくれないのです。
そのため、初期化されていない変数(読み取りメモリ)を使用すると、時として原因究明に時間を要する事態に陥ることがあるのです。

  1. 片方のコンピュータで動作し、もう片方では動作しない
  2. ターミナルでは動作するが、テスターでは動作しない
  3. バージョンアップ 後、端末・OSの プログラムの挙動が異なる。
  4. Printを追加したら、動作しなくなった。
  5. など

アドバイスしかできませんが。
常にデータを初期化する習慣を身につけると、将来、初期化不足に関連するエラーを探すのに多くの時間を浪費することがなくなります。

分かりやすい説明とアドバイスありがとうございました。

 
Ilyas:

ArrayResizeはメモリをクリーンアップしないので、前の「消費者」からのゴミが含まれています。

これは、配列にメモリが割り当て られた後、99.99(9)%の場合、ユーザーがデータでそれを「埋める」ため、高速化のために行われます。


の説明が正しくないので、初心者の方には問題があるかもしれません。ArrayResizeのヘルプファイルに正しい説明があります。

要するに、初心者はまず配列とは何か、どのようにメモリに格納するのか、どのように作成し、どのようにメモリを割り当てるのかを理解すれば、問題はないのである。

ps. 一般に、MQL5の配列の実装は、構造体と同様にС++より悪いです。後者がほとんどのケースで許容できる場合、配列のためにラッパーを書かなければなりません。

単純なプログラムでは配列の実装はうまくいくが、複雑なプログラムでは問題になる

 
Artyom Trishkin:

ダメってどういうこと?マザーボードスロットからメモリースティックを取り出している人はいない。メモリが存在し、解放されると(値で初期化されるのではなく、解放される)、他のプログラムの必要性に応じて使用されるようになります。

メモリ、とは記憶された情報のことであり、記憶媒体であるRAMバーのことではありません。

メモリがゼロになるわけではなく、格納するアドレスだけ解放・割り当てられ、自分でクリアランスを整理しなければならないとは知りませんでした。

ありがとうございます。
 

以前から気づいていたのですが、Terminalからデモ口座を開くと、ブローカー/トレーディングサーバーの検索がうまくいきません。

ブローカー名を入力しても、何も表示されない


トレードサーバーのフルネームを入力すると、期待通りの結果が得られます。


 

MT5 1882のインストール、Webサイトからダウンロードしたファイル(https://download.mql5.com/cdn/web/metaquotes.software.corp/mt5/mt5setup.exe?utm_source=www.mql5.com&utm_campaign=download)。
UACを有効にすると、管理者権限を付与する前にエラーが発生します。
管理者として実行しても問題は解決されず、エラーメッセージボックスが隠れるだけです。




 

何かアドバイスはありますか? 1881 mt5を構築してください。通常の最適化を実行しています。その結果、最適化は再実行 されますが、ローカルエージェントは起動せず、接続と切断のみが行われます。エージェントのログには何もありません。

mtを再起動するのみで、解決します。

 

同じビルドで、ある問題が発生しました。Mtは以前のようにファイルの末尾に追加することを望まず、常にルビを振っています

int f = FileOpen(file,FILE_COMMON|FILE_READ|FILE_WRITE|FILE_TXT);

 

2018.07.26 19:23:56.269 Core 01 テスターエージェント認証エラー

いかがでしょうか )))?そしてどうすればいいのか?

 
Anton Ohmat:

2018.07.26 19:23:56.269 Core 01 テスターエージェント認証エラー

いかがでしょうか )))?そしてどうすればいいのか?

せいぜい、レンダラー・ウィンドウが閉じない程度です。悪く言えば、古くから知られている問題。

 
Anton Ohmat:

同じビルドで、ある問題が発生しました。Mtは以前のようにファイルの末尾に追加することを望まず、常にルビを振っています

int f = FileOpen(file,FILE_COMMON|FILE_READ|FILE_WRITE|FILE_TXT);

ファイルを書き込む前に、ファイルの末尾でFileSeekを実行していますか?