他のタイムフレームに移動する際、インジケーターのグローバル変数の構造を変更するにはどうすればよいですか? - ページ 6 1234567 新しいコメント fxsaber 2021.07.11 10:17 #51 Nikolai Semko:自分で調整することを誰も止めない。 ただ、この例ではキャスティングの話は全く出てきませんね。 Nikolai Semko 2021.07.11 10:26 #52 fxsaber:ただ、この例はキャスティングの話ではないので、全く関係ないのですが。 よし、これでいいんだ。バイゴーンズ Nikolai Semko 2021.07.11 10:28 #53 fxsaber:エラーが出たのはこのバージョンでした。 いや、144行目の55番はインデックスではないので、何か別のものがあるのでしょう。 fxsaber 2021.07.11 10:34 #54 Nikolai Semko: よし、クリアだ。 トラベラーズ それでも二人の時間を無駄にした。 #include "Convert.mqh" // https://c.mql5.com/3/360/Convert.mqh //+------------------------------------------------------------------+ //| | //+------------------------------------------------------------------+ template <typename T> CStructArr::CStructArr(const string name,T &var[]) { //ulong tt=GetMicrosecondCount(); int sizeT = sizeof(T)/4; size = ArraySize(var); w=1+size*sizeT; ArrayResize(Var,w); h=1; Name="::"+name+ IntegerToString(ChartGetInteger(0,CHART_WINDOW_HANDLE)); if(ResourceReadImage(Name,Var,w,h)) { uint_to_t = GetMicrosecondCount(); CONVERT::ArrayToArray(Var, var); uint_to_t = GetMicrosecondCount()-uint_to_t; } else { for (int j=0; j<size; j++) { su.st=var[j]; //for(int i=0; i<sizeof(T)/4; i++) Var[j*sizeof(T)/4+i]=su.u[i]; ArrayCopy(Var, su.u,j*sizeT,0,sizeT); value[j]=var[j]; } if(!ResourceCreate(Name,Var,w,1,0,0,0,COLOR_FORMAT_XRGB_NOALPHA)) printf("Error create Resource: "+DoubleToString(GetLastError(),0)); } } template <typename T> bool CStructArr::Set(T &var[]) { t_to_uint = GetMicrosecondCount(); CONVERT::ArrayToArray(var, Var); t_to_uint = GetMicrosecondCount() - t_to_uint; if(!ResourceCreate(Name,Var,w,1,0,0,0,COLOR_FORMAT_XRGB_NOALPHA)) { printf("Error create Resource: "+DoubleToString(GetLastError(),0)); return(false); } else return(true); } fxsaber 2021.07.11 10:37 #55 Nikolai Semko: いいえ、あなたは何か他のものを持っています。144 行目の位置55はインデックスではありません。 114行目 fxsaber 2021.07.11 11:12 #56 fxsaber:それでも二人の時間を無駄にした。オリジナル(SIZE = 1000)です。 Сохранение данных - 71 микросекунд Время T[] -> uint[] - 49 микросекунд Востановление данных - 252 микросекунд Время uint[] -> T[] - 52 микросекунд Востановление данных - 258 микросекунд Время uint[] -> T[] - 51 микросекунд Востановление данных - 262 микросекунд Время uint[] -> T[] - 52 микросекунд修正されました。 Сохранение данных - 55 микросекунд Время T[] -> uint[] - 47 микросекунд Сохранение данных - 30 микросекунд Время T[] -> uint[] - 25 микросекунд Сохранение данных - 54 микросекунд Время T[] -> uint[] - 45 микросекунд Сохранение данных - 31 микросекунд Время T[] -> uint[] - 25 микросекунд データ復旧がうまくいかない。理解する時間がない。おそらく、TFが切り替わるときに、古いコピーが新しいコピーより遅れてノックアウトされるのでしょう。 Nikolai Semko 2021.07.11 11:15 #57 fxsaber:114行目 はい、144を間違えてしまいましたが、114を見ていました。 いいえ、奇跡は起きないのです。この位置でオーバーフローエラーはありえません。 インラインパスとファイルの場所を確認してください。 フォルダに2つのiCanvasがあり、古いバージョンを動かしているということですね。 Nikolai Semko 2021.07.11 11:16 #58 fxsaber:オリジナル(SIZE = 1000)です。修正されました。 データ復旧がうまくいかない。理解する時間がない。おそらく、TFが切り替わるときに、古いコピーが新しいコピーより遅れてノックアウトされるのでしょう。 はい、あなたのバージョンも実行できませんでした。録音は行われていません。 fxsaber 2021.07.11 11:19 #59 Nikolai Semko:インルーダーのパスとファイルの場所を確認してください。つまり、フォルダ内に2つのiCanvasがあり、古いバージョンが動作しているということです。 MQL5フォルダ全体ではiCanvasは1つしかありません。私はALT+Gでジャンプしています。エラーが除外されました。 fxsaber 2021.07.11 11:56 #60 fxsaber:ただ、この例はキャスティングの話ではないので、全く関係ないのですが。 そんな物差しになるんです。 #include "Convert.mqh" // https://c.mql5.com/3/360/Convert.mqh #include <fxsaber\Benchmark\Benchmark.mqh> // https://www.mql5.com/ru/code/31279 void OnStart() { int Array[]; MqlTick Ticks1[]; ArrayResize(Ticks1, 10000); _B(CONVERT::ArrayToArray(Ticks1, Array), 1); MqlTick Ticks2[]; _B(CONVERT::ArrayToArray(Array, Ticks2), 1); Print(ArrayCompare(Ticks1, Ticks2)); // Должен быть ноль. } 1234567 新しいコメント 取引の機会を逃しています。 無料取引アプリ 8千を超えるシグナルをコピー 金融ニュースで金融マーケットを探索 新規登録 ログイン スペースを含まないラテン文字 このメールにパスワードが送信されます エラーが発生しました Googleでログイン WebサイトポリシーおよびMQL5.COM利用規約に同意します。 新規登録 MQL5.com WebサイトへのログインにCookieの使用を許可します。 ログインするには、ブラウザで必要な設定を有効にしてください。 ログイン/パスワードをお忘れですか? Googleでログイン
自分で調整することを誰も止めない。
ただ、この例ではキャスティングの話は全く出てきませんね。
ただ、この例はキャスティングの話ではないので、全く関係ないのですが。
エラーが出たのはこのバージョンでした。
よし、クリアだ。
それでも二人の時間を無駄にした。
いいえ、あなたは何か他のものを持っています。144 行目の位置55はインデックスではありません。
114行目
それでも二人の時間を無駄にした。
オリジナル(SIZE = 1000)です。
修正されました。
データ復旧がうまくいかない。理解する時間がない。おそらく、TFが切り替わるときに、古いコピーが新しいコピーより遅れてノックアウトされるのでしょう。114行目
はい、144を間違えてしまいましたが、114を見ていました。
いいえ、奇跡は起きないのです。この位置でオーバーフローエラーはありえません。
インラインパスとファイルの場所を確認してください。
フォルダに2つのiCanvasがあり、古いバージョンを動かしているということですね。
オリジナル(SIZE = 1000)です。
修正されました。
データ復旧がうまくいかない。理解する時間がない。おそらく、TFが切り替わるときに、古いコピーが新しいコピーより遅れてノックアウトされるのでしょう。はい、あなたのバージョンも実行できませんでした。録音は行われていません。
インルーダーのパスとファイルの場所を確認してください。
つまり、フォルダ内に2つのiCanvasがあり、古いバージョンが動作しているということです。
MQL5フォルダ全体ではiCanvasは1つしかありません。私はALT+Gでジャンプしています。エラーが除外されました。
ただ、この例はキャスティングの話ではないので、全く関係ないのですが。
そんな物差しになるんです。