externとinputの違い - ページ 6 1234567 新しいコメント Alexey Navoykov 2019.06.30 09:06 #51 一般に、グローバル 変数は悪であるという事実から始めるべきで、そのような変数が多くのファイルで使われ、どこからでも変更できる場合は、悪の二乗です!したがって、そのような変数は常に定数として宣言すべきです(アルゴリズムの論理に影響しない、デバッグ用の補助変数の話をする場合は別です)。 つまり、定数のグローバル変数があるのなら、最後に括弧をつけて関数にした方が、この関数の実装を自由に設定できて楽ではないか、という当然の結論になる。 そして、上に書いたようにMQLのextern変数が未発達なことを考慮すると、他に代替手段がないのである。 Vladimir Simakov 2019.06.30 10:19 #52 extern指定子は、プロジェクトが複数のmq5ファイル(mqhと混同しないように)から構成されている場合に必要です。この場合、グローバル変数を 別のファイルで宣言するのが理にかなっています。mqhで構成されるプロジェクトで、#includeを使ってビルドする場合、1つのファイルを複数のファイルに分割しているので、externは必要ありません。 Igor Makanu 2019.06.30 10:26 #53 Vladimir Simakov: extern指定子は、プロジェクトが複数のmq5ファイル(mqhと混同しないように)から構成されている場合に必要です。この場合、グローバル変数を 別のファイルで宣言するのが理にかなっています。mqhで構成されるプロジェクトで、#includeを使ってビルドする場合、1つのファイルを複数のファイルに分割しているので、externは不要です。 の例が必要です。ライブラリでexternを使用してみましたが、うまくいきませんhttps://www.mql5.com/ru/forum/316795/page2#comment_12259472 Vladimir Simakov 2019.06.30 10:36 #54 Igor Makanu: の例が必要です。ライブラリでexternを使用してみましたが、うまくいきませんhttps://www.mql5.com/ru/forum/316795/page2#comment_12259472 図書館用ではなく、プロジェクト用です。プロジェクトは、#includeでビルドするか、いくつかのmq5ファイルを作るかのどちらかです。2つ目のケースでは、グローバル変数を異なるファイルのスコープに入れるためにexternが必要です。 Igor Makanu 2019.06.30 10:40 #55 Vladimir Simakov: ここでは、2番目のケースで、グローバル変数を異なるファイルのスコープに入力するexternが必要です。 私は気にしませんが、私は例が必要です、ここであなたはexternを使用する場所を推測することができます - 私はライブラリでそれを試してみましたが、それは動作しませんでした、あなたはexternをどのように使用するかを教えてください。 Alexey Navoykov 2019.06.30 10:40 #56 Vladimir Simakov: 図書館向けではなく、プロジェクト向けです。プロジェクトは、#includeでビルドするか、いくつかのmq5ファイルを作るかのどちらかです。2つ目のケースでは、グローバル変数を異なるファイルのスコープに入れるためにexternが必要です。 具体的にどのように変数をスコープに入力するのですか? mq5-filesはプロジェクト 内で独立しており、何のつながりもありません。 各ファイルのコンパイルは独立していますね。 Vladimir Simakov 2019.07.01 12:25 #57 要は、externが単に不要であることが判明したのです。任意のプロジェクト ファイルでグローバルに宣言された変数は、そのファイルすべてで利用可能です。でも、なぜ?クリエイターに質問です。 Ilyas 2019.07.01 12:30 #58 Vladimir Simakov: 要は、externが単に不要であることが判明したのです。任意のプロジェクトファイルでグローバルに宣言された変数は、そのファイルすべてで利用可能です。でも、なぜ?クリエイターに質問です。 extern変数は、それが使用されるすべての*.mqhファイルで宣言することができます。 このような*.mqhファイルは、グローバル変数が宣言されている*.mq5(または他の*.mqh)ファイルには依存しません。 これにより、他のプロジェクトでそのファイルを利用することができ、コードの再利用 性が高まります。 Vladimir Simakov 2019.07.01 13:05 #59 Ilyas: extern変数は、それが使用されるすべての*.mqhファイル内で宣言することができます。 このような*.mqhファイルは、グローバル変数が宣言されている*.mq5(または他の*.mqh)ファイルには依存しません。 これにより、他のプロジェクトでそのファイルを利用することができ、コードの再利用 性が高まります。 ありがとうございます、これで理屈がわかりました。私はもともと、C++のexternと似たようなものだと思っていました。 Dmitry Fedoseev 2019.07.01 13:49 #60 Vladimir Simakov: ありがとうございます、これで理屈がわかりました。私はもともと、C++のexternと似たようなものだと思っていました。 似てませんか? 1234567 新しいコメント 取引の機会を逃しています。 無料取引アプリ 8千を超えるシグナルをコピー 金融ニュースで金融マーケットを探索 新規登録 ログイン スペースを含まないラテン文字 このメールにパスワードが送信されます エラーが発生しました Googleでログイン WebサイトポリシーおよびMQL5.COM利用規約に同意します。 新規登録 MQL5.com WebサイトへのログインにCookieの使用を許可します。 ログインするには、ブラウザで必要な設定を有効にしてください。 ログイン/パスワードをお忘れですか? Googleでログイン
一般に、グローバル 変数は悪であるという事実から始めるべきで、そのような変数が多くのファイルで使われ、どこからでも変更できる場合は、悪の二乗です!したがって、そのような変数は常に定数として宣言すべきです(アルゴリズムの論理に影響しない、デバッグ用の補助変数の話をする場合は別です)。
extern指定子は、プロジェクトが複数のmq5ファイル(mqhと混同しないように)から構成されている場合に必要です。この場合、グローバル変数を 別のファイルで宣言するのが理にかなっています。mqhで構成されるプロジェクトで、#includeを使ってビルドする場合、1つのファイルを複数のファイルに分割しているので、externは不要です。
の例が必要です。ライブラリでexternを使用してみましたが、うまくいきませんhttps://www.mql5.com/ru/forum/316795/page2#comment_12259472
の例が必要です。ライブラリでexternを使用してみましたが、うまくいきませんhttps://www.mql5.com/ru/forum/316795/page2#comment_12259472
ここでは、2番目のケースで、グローバル変数を異なるファイルのスコープに入力するexternが必要です。
私は気にしませんが、私は例が必要です、ここであなたはexternを使用する場所を推測することができます - 私はライブラリでそれを試してみましたが、それは動作しませんでした、あなたはexternをどのように使用するかを教えてください。
図書館向けではなく、プロジェクト向けです。プロジェクトは、#includeでビルドするか、いくつかのmq5ファイルを作るかのどちらかです。2つ目のケースでは、グローバル変数を異なるファイルのスコープに入れるためにexternが必要です。
要は、externが単に不要であることが判明したのです。任意のプロジェクトファイルでグローバルに宣言された変数は、そのファイルすべてで利用可能です。でも、なぜ?クリエイターに質問です。
extern変数は、それが使用されるすべての*.mqhファイルで宣言することができます。
このような*.mqhファイルは、グローバル変数が宣言されている*.mq5(または他の*.mqh)ファイルには依存しません。
これにより、他のプロジェクトでそのファイルを利用することができ、コードの再利用 性が高まります。
extern変数は、それが使用されるすべての*.mqhファイル内で宣言することができます。
このような*.mqhファイルは、グローバル変数が宣言されている*.mq5(または他の*.mqh)ファイルには依存しません。
これにより、他のプロジェクトでそのファイルを利用することができ、コードの再利用 性が高まります。
ありがとうございます、これで理屈がわかりました。私はもともと、C++のexternと似たようなものだと思っていました。
似てませんか?