変数の動作に関する混乱 - ページ 7 1234567 新しいコメント wladimir 2013.12.21 17:39 #61 週末テスト用にExpert Advisorを start()なしで作り直した。 1. チャートへ移動 2. パラメータを変更する 3. ログを見ると、文字列(青)は、int(緑)とは異なり、外部変数から誤った値を受け取っていることがわかります。 extern string ValueString = "DDD"; extern int ValueInt = 10; string tempString="val"; int tempInt =0; bool firsttime=true; int init() { if(firsttime) { // значение присваевается тольо ОДИН раз Print("иницилизация глобальных переменных"); Print("tempString = ",tempString); Print("tempInt = ",tempInt); Print("однократное присваение внешних значений глобальным переменным"); tempString=ValueString; tempInt =ValueInt; firsttime =false; Print("ValueString: ",ValueString," < >"," tempString: ", tempString); Print("ValueInt: ",ValueInt, " < >"," tempInt: ",tempInt); } else { Print("меняем входные параметры"); Print("ValueString: ",ValueString," < >"," tempString: ", tempString); Print("ValueInt: ",ValueInt, " < >"," tempInt: ",tempInt); } } int start() {} ファイル: testinit.mq4 1 kb Mikhail Kozhemyako 2013.12.21 23:14 #62 wlad: 週末テスト用にExpert Advisorをstart()なしで作り直した。 1. チャートへ移動 2. パラメータを変更する 3. ログを見ると、文字列(青)は、int(緑)とは異なり、外部変数から誤った値を受け取っていることがわかる そして、確かにバグがあります...外部レベルで設定した変数はEAを再起動しても起動せず、以前の再起動時のうんちくを持ち出します...Wladさんの忍耐力に感謝です)))) Mikhail Kozhemyako 2013.12.22 14:54 #63 そして、ここにもテーマがある...。という単純な指標です。 #property indicator_color1 レッド и SetIndexStyle(0,DRAW_LINE,STYLE_SOLID,3,Aqua)を設定します。 色は厚みのあるRedのまま...インジケータを強制的に削除して再起動するまで、つまり単純な再コンパイルではどうにもなりません。一部のトランクからパラメータが引き出されていることが判明...。もちろんデタラメだが、ウラジはやった)))) Sergey Guliaev 2013.12.23 08:36 #64 どうやら関係あるようで、以前から気づいていたのですが、EAのコードを変更してコンパイルしても、ターミナルをリロードするまで、前のコードが 動いてしまうことがあるんです。Expert Advisorを再起動しても解決しない。でも、いつもそうとは限らないので、のんびり構えています。まあ、あるにはあるのですが...。あまり気にならないようです。 wladimir 2013.12.23 09:34 #65 そうですね。 開発者が修正してくれればいいのですが。 それともここに書いても無意味で、ヘルプデスクに直行するのでしょうか? ところで、どこに行けばいいのでしょうか? Victor Nikolaev 2013.12.25 15:04 #66 Sepulca: Э...おめでとうございます!なんだかおじいちゃんみたいですね、そうでもないですが、子供たちは認めています......))) お目出度うございますおじいさんは何歳ですか? wladimir 2013.12.26 18:53 #67 アドバイスをお願いします キャリパーへの接触方法は? 見当たらない Vladimir Gomonov 2013.12.26 18:59 #68 wlad: アドバイスをお願いします キャリパーへの接触方法は? 見当たらない 第4回フォーラムから直接はできません。 第5回フォーラムからできます。 mql5.comプロフィールの「サービスデスク」リンクをご覧ください(左側の、プロフィールサービスのリストがある列)。 wladimir 2013.12.26 19:01 #69 MetaDriver: 第4回フォーラムから直接はできません。 第5回フォーラムからできます。 mql5.comプロフィールの「サービスデスク」リンクをご覧ください(左側の、プロフィールサービスのリストがある列)。 ありがとうございます、チェックしてみます。 Rashid Umarov 2013.12.27 08:34 #70 wlad: 週末テスト用にExpert Advisorをstart()なしで作り直した。 1. チャートへ移動 2. パラメータを変更する 3. ログを見ると、文字列(青)は、int(緑)とは異なり、外部変数から誤った値を受け取っていることがわかる 新コンパイラーでは 再現できません。誰も古いものを変えようとはしない。 extern string ValueString = "DDD"; extern int ValueInt = 10; string tempString="val"; int tempInt =0; bool firsttime=true; //+------------------------------------------------------------------+ //| Expert initialization function | //+------------------------------------------------------------------+ int OnInit() { //--- if(firsttime) { // значение присваевается тольо ОДИН раз Print("иницилизация глобальных переменных"); Print("tempString = ",tempString); Print("tempInt = ",tempInt); Print("однократное присваение внешних значений глобальным переменным"); tempString=ValueString; tempInt =ValueInt; firsttime =false; Print("ValueString: ",ValueString," < >"," tempString: ",tempString); Print("ValueInt: ",ValueInt," < >"," tempInt: ",tempInt); } else { Print("меняем входные параметры"); Print("ValueString: ",ValueString," < >"," tempString: ",tempString); Print("ValueInt: ",ValueInt," < >"," tempInt: ",tempInt); } //--- return(INIT_SUCCEEDED); } //+------------------------------------------------------------------+ //| Expert deinitialization function | //+------------------------------------------------------------------+ void OnDeinit(const int reason) { //--- } //+------------------------------------------------------------------+ //| Expert tick function | //+------------------------------------------------------------------+ void OnTick() { //--- } //+------------------------------------------------------------------+ 1234567 新しいコメント 取引の機会を逃しています。 無料取引アプリ 8千を超えるシグナルをコピー 金融ニュースで金融マーケットを探索 新規登録 ログイン スペースを含まないラテン文字 このメールにパスワードが送信されます エラーが発生しました Googleでログイン WebサイトポリシーおよびMQL5.COM利用規約に同意します。 新規登録 MQL5.com WebサイトへのログインにCookieの使用を許可します。 ログインするには、ブラウザで必要な設定を有効にしてください。 ログイン/パスワードをお忘れですか? Googleでログイン
週末テスト用にExpert Advisorを start()なしで作り直した。
1. チャートへ移動
2. パラメータを変更する
3. ログを見ると、文字列(青)は、int(緑)とは異なり、外部変数から誤った値を受け取っていることがわかります。
週末テスト用にExpert Advisorをstart()なしで作り直した。
1. チャートへ移動
2. パラメータを変更する
3. ログを見ると、文字列(青)は、int(緑)とは異なり、外部変数から誤った値を受け取っていることがわかる
そして、ここにもテーマがある...。という単純な指標です。
#property indicator_color1 レッド
и
SetIndexStyle(0,DRAW_LINE,STYLE_SOLID,3,Aqua)を設定します。
色は厚みのあるRedのまま...インジケータを強制的に削除して再起動するまで、つまり単純な再コンパイルではどうにもなりません。一部のトランクからパラメータが引き出されていることが判明...。もちろんデタラメだが、ウラジはやった))))
そうですね。
開発者が修正してくれればいいのですが。
それともここに書いても無意味で、ヘルプデスクに直行するのでしょうか?
ところで、どこに行けばいいのでしょうか?
Э...おめでとうございます!なんだかおじいちゃんみたいですね、そうでもないですが、子供たちは認めています......)))
お目出度うございますおじいさんは何歳ですか?
アドバイスをお願いします
キャリパーへの接触方法は?
見当たらない
アドバイスをお願いします
キャリパーへの接触方法は?
見当たらない
第4回フォーラムから直接はできません。 第5回フォーラムからできます。 mql5.comプロフィールの「サービスデスク」リンクをご覧ください(左側の、プロフィールサービスのリストがある列)。
週末テスト用にExpert Advisorをstart()なしで作り直した。
1. チャートへ移動
2. パラメータを変更する
3. ログを見ると、文字列(青)は、int(緑)とは異なり、外部変数から誤った値を受け取っていることがわかる
新コンパイラーでは 再現できません。誰も古いものを変えようとはしない。