私のアプローチコアはエンジンです。 - ページ 99 1...9293949596979899100101102103104105106...184 新しいコメント Vasiliy Sokolov 2018.12.21 12:36 #981 Реter Konow: つまり、ユーザーパラメータの値を変更するたびに、この値をユニファイド変数に変換して、すぐに共有バイト配列に保存し、それをuintに変換してリソースに書き込む必要があるのです。ユニオン構造体の中にユーザーパラメータを入れる必要があります。パラメータを変更すると,同時にint配列も変更され,構造体が変更されます union c { uint i[2]; long width; }cc; cс.width = 200; i[2]は他のプログラムによって読み込まれるユーザリソースである。 cc.width = 200の1行で変更されます。 幅を担当するパラメータ。このパラメータを含む構造体。相手プログラムが読み込んでいるリソースの配列。 また、ここでは変換やコピーは行わず、マッピングを行うだけです。 Реter Konow 2018.12.21 12:38 #982 Vasiliy Sokolov: Connection Propertiesファイルのラッパー関数を変更して、使える値をそれぞれユニオンから対応する変数に変換して、その場でバイト配列にすることができるんだ。ただし、テキスト値も渡す必要があるため、StringToChar() でバイト配列に変換する必要がある。 しかし、これではユニオンを使う意味が無くなってしまいます。結局のところ、どうせStringToChar() を使わなければならないのなら、すべてを文字列に組み立ててから、StringToChar() を使って文字列全体をバイトに変換してはどう だろう。 Реter Konow 2018.12.21 12:41 #983 Vasiliy Sokolov:ユニオン構造体の中にユーザーパラメータを入れる必要があります。パラメータを変更すると,同時にint配列の構造も変更されます i[2]は他のプログラムによって読み込まれるユーザリソースである。 cc.width = 200の1行で変更されます。 幅を担当するパラメータ。このパラメータを含む構造体。サードパーティプログラムが読み込むリソースの配列。 そして、ここでは変換もコピーもせず、マッピングするだけです。ワシリー、双方向のコミュニケーションの話をしてることを忘れてないか?私のエンジンでは、すべてをユニオンに結びつけることはできても、ユーザーコードに責任を持つことはできません。ラッパーを思いついて、プラグインに入れるくらいしかできない。 ユーザーもユニオンを使うという保証はどこにあるんだ?そのため、彼が私のラッパー関数を呼び出すとき、私は彼の値を自分で受け取り、彼のプラグインファイル内の私のユニオンから私の変数の1つにキャストしなければならないのです。 Vasiliy Sokolov 2018.12.21 12:41 #984 Реter Konow:Connection Propertiesファイルのラッパー関数を変更して、使える値をそれぞれユニオンから対応する変数に変換して、その場でバイト配列にすることができるんだ。ただし、テキスト値も渡す必要があるため、StringToChar() でバイト配列に変換する必要がある。 しかし、これではユニオンを使う意味が無くなってしまいます。結局のところ、どうせStringToChar() を使わなければならないのなら、すべてを文字列に組み立ててから、StringToChar() を使って文字列全体をバイトに変換してはどう だろう。二重の構文解析をすることになるからです。すべてを文字列に変換することになり、非常に時間がかかります。そして、文字列を配列にパースするのですが、これが非常に速いのです。そして、それを文字列に戻して組み立てるのですが、これが非常に速いんです。そして、その文字列を正しい型にパースするのですが、これが非常に時間がかかります。 Vasiliy Sokolov 2018.12.21 12:42 #985 Реter Konow:しかし、テキストはどうでしょうか? StringToChar() でバイトに変換する必要があります。ユニオンは使えませんよね?確かに翻訳する必要はありますが、パースと違って速いですからね。 Реter Konow 2018.12.21 12:50 #986 例えば、こんな感じです。 以下は、Connection Properties プラグインファイルのラッパー関数です。 string E_Last_10_bars_2_Close_price(string n = rare_value, int Property = -1){return(GET_N_SET(11,n,Property));} この機能は、次のように呼び出されます。 E_Last_10_bars_2_Close_price(Close[2]); つまり、ユーザーはテーブルのセルにClose[2] の値を設定する。 Close[2] - это значение дабл. したがって、彼のプログラムのラッパー関数内では、値(Close[2])をchar配列として表現することができます。 しかし、同じセルで、ユーザーが「こんにちは! :)」という値を送ることができます。では、どうすればいいのでしょうか? E_Last_10_bars_2_Close_price("Привет! :)"); Реter Konow 2018.12.21 12:55 #987 Vasiliy Sokolov 2018.12.21 12:58 #988 ああ、ピーター、君はプログラミング言語を間違えて始めたんだね。厳密な打ち込みではないものを学ぶべきでしたね。 一般的には、MQLをベースに独自の非定型言語を発明されたと理解しています。文字列を使うことで、その厳しい型付けを回避したのですね。これぞマヌーバ! Реter Konow 2018.12.21 12:59 #989 Vasiliy Sokolov:ああ、ピーター、君はプログラミング言語を間違えて始めたんだね。厳密な打ち込みではないものを学ぶべきでしたね。 一般的には、MQLをベースに独自の非定型言語を発明されたと理解しています。文字列を使うことで、その厳しい型付けを回避したのですね。これぞマヌーバ!うん、))ナイトを使った一手! Vasiliy Sokolov 2018.12.21 13:00 #990 表を使用する場合、表のデータを厳密に数値にするか、テキストにするかを決めなければなりません。テキストなら文字列で渡す。もしそれが本物なら、あなたの関数はこうなるに違いない。 string E_Last_10_bars_2_Close_price(double n, int Property = -1){return(GET_N_SET(11,n,Property));} 1...9293949596979899100101102103104105106...184 新しいコメント 取引の機会を逃しています。 無料取引アプリ 8千を超えるシグナルをコピー 金融ニュースで金融マーケットを探索 新規登録 ログイン スペースを含まないラテン文字 このメールにパスワードが送信されます エラーが発生しました Googleでログイン WebサイトポリシーおよびMQL5.COM利用規約に同意します。 新規登録 MQL5.com WebサイトへのログインにCookieの使用を許可します。 ログインするには、ブラウザで必要な設定を有効にしてください。 ログイン/パスワードをお忘れですか? Googleでログイン
つまり、ユーザーパラメータの値を変更するたびに、この値をユニファイド変数に変換して、すぐに共有バイト配列に保存し、それをuintに変換してリソースに書き込む必要があるのです。
ユニオン構造体の中にユーザーパラメータを入れる必要があります。パラメータを変更すると,同時にint配列も変更され,構造体が変更されます
i[2]は他のプログラムによって読み込まれるユーザリソースである。
cc.width = 200の1行で変更されます。
- 幅を担当するパラメータ。
- このパラメータを含む構造体。
- 相手プログラムが読み込んでいるリソースの配列。
また、ここでは変換やコピーは行わず、マッピングを行うだけです。Connection Propertiesファイルのラッパー関数を変更して、使える値をそれぞれユニオンから対応する変数に変換して、その場でバイト配列にすることができるんだ。ただし、テキスト値も渡す必要があるため、StringToChar() でバイト配列に変換する必要がある。
しかし、これではユニオンを使う意味が無くなってしまいます。結局のところ、どうせStringToChar() を使わなければならないのなら、すべてを文字列に組み立ててから、StringToChar() を使って文字列全体をバイトに変換してはどう だろう。
ユニオン構造体の中にユーザーパラメータを入れる必要があります。パラメータを変更すると,同時にint配列の構造も変更されます
i[2]は他のプログラムによって読み込まれるユーザリソースである。
cc.width = 200の1行で変更されます。
- 幅を担当するパラメータ。
- このパラメータを含む構造体。
- サードパーティプログラムが読み込むリソースの配列。
そして、ここでは変換もコピーもせず、マッピングするだけです。ワシリー、双方向のコミュニケーションの話をしてることを忘れてないか?私のエンジンでは、すべてをユニオンに結びつけることはできても、ユーザーコードに責任を持つことはできません。ラッパーを思いついて、プラグインに入れるくらいしかできない。
ユーザーもユニオンを使うという保証はどこにあるんだ?そのため、彼が私のラッパー関数を呼び出すとき、私は彼の値を自分で受け取り、彼のプラグインファイル内の私のユニオンから私の変数の1つにキャストしなければならないのです。
Connection Propertiesファイルのラッパー関数を変更して、使える値をそれぞれユニオンから対応する変数に変換して、その場でバイト配列にすることができるんだ。ただし、テキスト値も渡す必要があるため、StringToChar() でバイト配列に変換する必要がある。
しかし、これではユニオンを使う意味が無くなってしまいます。結局のところ、どうせStringToChar() を使わなければならないのなら、すべてを文字列に組み立ててから、StringToChar() を使って文字列全体をバイトに変換してはどう だろう。
二重の構文解析をすることになるからです。すべてを文字列に変換することになり、非常に時間がかかります。そして、文字列を配列にパースするのですが、これが非常に速いのです。そして、それを文字列に戻して組み立てるのですが、これが非常に速いんです。そして、その文字列を正しい型にパースするのですが、これが非常に時間がかかります。
しかし、テキストはどうでしょうか?
StringToChar() でバイトに変換する必要があります。ユニオンは使えませんよね?
確かに翻訳する必要はありますが、パースと違って速いですからね。
例えば、こんな感じです。
以下は、Connection Properties プラグインファイルのラッパー関数です。
この機能は、次のように呼び出されます。
つまり、ユーザーはテーブルのセルにClose[2] の値を設定する。
したがって、彼のプログラムのラッパー関数内では、値(Close[2])をchar配列として表現することができます。
しかし、同じセルで、ユーザーが「こんにちは! :)」という値を送ることができます。では、どうすればいいのでしょうか?
ああ、ピーター、君はプログラミング言語を間違えて始めたんだね。厳密な打ち込みではないものを学ぶべきでしたね。
一般的には、MQLをベースに独自の非定型言語を発明されたと理解しています。文字列を使うことで、その厳しい型付けを回避したのですね。これぞマヌーバ!
ああ、ピーター、君はプログラミング言語を間違えて始めたんだね。厳密な打ち込みではないものを学ぶべきでしたね。
一般的には、MQLをベースに独自の非定型言語を発明されたと理解しています。文字列を使うことで、その厳しい型付けを回避したのですね。これぞマヌーバ!
うん、))ナイトを使った一手!
表を使用する場合、表のデータを厳密に数値にするか、テキストにするかを決めなければなりません。テキストなら文字列で渡す。もしそれが本物なら、あなたの関数はこうなるに違いない。