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

 
A100:
word Hello」と出力されているのを見たことがありますか?

私があなたに書いた文章をもう一度よく読んでみてください。出力ではなく、計算。

これは、i += ++i +++ 式です。

 

トレーディング、自動売買システム、トレーディング戦略のテストに関するフォーラム

バグ、バグ、質問

メタドライバー さん 2013.08.03 17:55

"

念のため、画面右側に入力がある場合。

私の目的には必ずしも適していませんが、一般的なケースでは、多くの「週末の問題」が取り除かれるでしょう。

Forトレーディング、自動売買システム、トレーディング戦略のテストに関する専門家。

バグ、バグ、質問

メタドライバー, 2013.08.03 18:02

...

また、選択されたシンボルに対して、プログラム的にすべてのprev_calculatedを 強制的にゼロにする「コマンド」があると便利です。その後のダニ発生とのコンボが良いのでしょう。

皆さん、この件に関して何か予定があるのでしょうか?


 
TheXpert:

私があなたに書いた文章をもう一度よく読んでみてください。演繹ではなく、計算。


関数の引数の 計算、引数の代入、関数そのものの計算と、モーメントを分けるのは正しい。このスクリプトは - 引数が左から右へ、式そのものが左から右へ計算されることを示しています。

int f( int x )  { Print( __FUNCTION__ + "(" + x + ")" ); return ( x ); }

void OnStart()
{
        int a = 0x0;
        int b = f(a+=1) << f(a+=2) << f(a+=3);
	Print( "b=" + b );
}
Результат:
f(1)
f(3)
f(6)
b=512
 
externとstaticの違い、グローバルライフスパンを教えて ください。
//Test.mqh
extern int e1;
static int s1;

#import "testLib.ex5"
        void f();
#import
//test.mq5
#include "Test.mqh"

void OnStart()
{
        e1 = 10;
        s1 = 10;
        f();
}

//testLib.mq5

#property library
#include "Test.mqh"

void f() export
{
        Print( "e1=" + e1 );
        Print( "s1=" + s1 );
}
Результат:
e1 = 0 //не понятно
s1 = 0 //нормально
Документация по MQL5: Стандартные константы, перечисления и структуры / Торговые константы / Свойства ордеров
Документация по MQL5: Стандартные константы, перечисления и структуры / Торговые константы / Свойства ордеров
  • www.mql5.com
Стандартные константы, перечисления и структуры / Торговые константы / Свойства ордеров - Документация по MQL5
 

初期化されていない標準クラスを使用しています。

私の授業はすべて自習です。そして、なぜ、クラスメソッド内ではうまくいき、OnInit()ではうまくいかないのか、理解できないのです。

アップ:非常に興味深い...;-)Expert Advisor をデバッガ下の MetaEditor で実行すると、すべてが正常に動作します。また、デバッガでコンパイルしたEX5(1.5倍)も問題なく動作しています。しかし、EAを通常モードで再コンパイルした途端、不具合が発生するようになりました。どうやら、Service Deskで新しいアプリケーションを開かなければならないようです。

 
A100:
知識のある方、externとstaticの違い、グローバルライフタイムについて教えて ください。

あなたの場合、2つの異なるファイルに独立して記述された2組の変数を1つの表現に統合することにしました。実はこれ、違うんです。

mqhファイルを追加することで、各インクルードファイルで別々の変数セットを明示的に定義します。大雑把に言うと、ヘッダーファイルには変数定義を書かないことです - スコープされます。

 
1つの(単一の)変数を複数のモジュールで使用したいのですが、方法がわかりません。.mqhを削除しました。
10 //testLib.mq5
20 #property library
30 extern int e1;
40 void f() export
50 {
60         Print( "e1=" + e1 );
70 }
10 //test.mq5
20 extern int e1;        
30 #import "testLib.ex5"
40          void f();
50 #import
60 void OnStart()
70 {
80         e1 = 10;
90         f();
100 }

出力結果:e1=0は変化なし。e1=10はどこに行ったのでしょうか?e1がモジュールによって異なるということは、staticとexternの機能は同じということでしょうか?また、そうでないとしたら、私の間違いはどこにあるのでしょうか?
 
A100:
1つの(単一の)変数を複数のモジュールで使用したいのですが、方法がわかりません。出力結果:e1=0は変化しなかった。
あなたの場合、専用の外部 メモリクラスがあります。トライ
 
stringo:
あなたの場合、専用の外部 メモリクラスがあります。トライ
あるモジュールでe1 = 10を代入し、2番目のモジュールでe1を呼び出すが、そこではe1はゼロである。
 
A100:
1つの(単一の)変数を複数のモジュールで使用したいのですが、方法がわかりません。.mqhPの出力を削除した:e1=0は変化しなかった。e=10はどこへ行ったのか?e1がモジュールによって異なるということは、staticとexternの機能は同じということでしょうか?また、そうでないとしたら、私の間違いはどこにあるのでしょうか?
まあ、一回だけ初期化すればいいようなものですが。外付けである。