[ARCHIVE!] フォーラムを散らかさないように、どんなルーキーの質問でも。プロフェッショナルは、通り過ぎないでください。あなたなしではどこにも行けない - 4. - ページ 165

 
sergeev:

この関数は、参照渡しされたパラメータに値を返すことができます。


どこで詳細を読むことができますか?ここのサイトのドキュメントには載っていないのですが。ありがとうございました。

 
Pyro:


どこで詳細を読むことができますか?ここのホームページのドキュメントには載っていないのですが。ありがとうございました。


https://docs.mql4.com/ru/basis/variables/formal
 
Pyro:

皆さん、こんにちは。関数は複数の値(カンマ区切り)を返すことができますか?

戻り値(1,2)

それともナンセンス?:))ロットと注文価格を指定するだけなのですが、そのために2つの関数を書くのは合理的ではありません。

グローバル変数 を通じて、1つのプログラムの異なる関数間でデータを受け渡すことができます。
数は無制限です。
 
Pyro:

皆さん、こんにちは。関数は複数の値(カンマ区切り)を返すことができますか?

戻り値(1,2)

それともナンセンス?:))注文価格とロットだけ定義すればいいのですが、そのために2つの関数を書くのは合理的ではありません。

形式的にはできない。すなわち、関数は1つの値を返しますが、構造体やクラス(これは同じものです)を返すこともあります。残念ながら、MQL4では、4バイトに収まる構造体(int)を返す以外は不可能です。そして、ビット演算 によって情報を抽出することができる。また、DOUBLEやSTRINGを使った実験も可能です。

sergeev:

関数は、参照で渡されたパラメータの値を返すことができます &
この場合、関数はパラメータを変更する。戻り値で結果のみを返す。
 
Zhunko:

...ただし、4バイトに収まる構造体(int)を返す場合は除く。さらに、ビット演算により情報を抽出することができる。


また、割り算(/)や割り算の余り(%)の演算で、intを 細かく分割することもできます。
 
MikeM:
また、割り算(/)や割り算の余り(%)の演算でintを 細かく刻むことができます。

文字列を返して、それをパースする方が簡単で、そこに多くの情報を入れることができます :)
 
MikeM:
また、割り算(/)、割り算の余り(%)の演算でintを 細かくすることができます。
これは同じですが、お尻からです。ピースワイズ演算が中心です。より速くなりました。
 
Zhunko:

また、DOUBLEやSTRINGでも実験できます。

STRINGは期待 できるが、DOUBLEは疑問 だ。
 
Zhunko:
同じものでも、お尻を貫通するんです。バタバタしたオペレーションが第一。より速くなりました。
と主張することができます。高速な」ビット演算の 結果は、その後、何らかの方法で処理されなければならない。
 
例えば、0...1023の範囲の3つの数値を1つのintに「パッキング」し、その後ビット演算のみで アンパッキングしてみると、「スルー・ザ・アス」の意味がわかると思います
)
))