エラー、バグ、質問 - ページ 246 1...239240241242243244245246247248249250251252253...3185 新しいコメント Yedelkin 2010.12.24 17:04 #2451 AlexSTAL: これはクラスメソッドです https://www.mql5.com/ru/docs/standardlibrary/technicalindicators/cindicator #include<IndicatorsIndicator.mqh> なるほど。どうやらdenkirは#include<IndicatorsIndicator.mqh>を 宣言していないようです。 しかし、Referenceを検索しても、この機能を見つけることはできない。 Igor Makanu 2010.12.24 17:05 #2452 Urain:では、なぜコンパイラは誓うのか、呼び出しの曖昧さは何なのか。どうやらintから longまたはその逆の型が 変換され、おそらくあなたは唯一のパラメータの数によって、または自動的に変換されていない型によってできるリロード関数SZZ: long のみで動作し、パラメータとして渡された int は自動的に long にキャストされます。 Mykola Demko 2010.12.24 17:12 #2453 IgorM:どうやらintから longまたはその逆の型が 変換され、おそらくあなたは唯一のパラメータの数によって、または自動的に変換されていない型によってできるリロード関数SZY: long のみで動作し、パラメータとして渡した int 型は自動的に long に変換されます。同じ曲です。class CA { public: void set(long i,long j,long n){Print("перегрузка long");}; void set(long i,long j,int n){Print("перегрузка int");}; }; void OnStart() { //--- CA a; int Int=3; long Long=4; a.set(1,2,Int); a.set(1,2,Long); }ポイントは、例外なくすべての型に関数のオーバーロードをさせることでした。また、型がiとjのコード値に対応していない場合は、警告を発生させる。 Ilyas 2010.12.24 17:16 #2454 Urain:開発者の皆様、オーバーロードされた関数の曖昧な呼び出しとは何か教えてください(コンパイラが悪態をついているのはこのことです)。set' - オーバーロードされた関数へのあいまいな呼び出し。はい、エラーが発生しました。ビルドリリース後に修正します。を使用することができます。class CA { public: void set(int i,int j,long n){Print("перегрузка long");}; void set(int i,int j,int n){Print("перегрузка int");}; }; void OnStart() { //--- CA a; int Int=3; long Long=4; a.set((int)1,(int)2,Int); a.set((int)1,(int)2,Long); } Igor Makanu 2010.12.24 17:17 #2455 Urain:intやlongのオーバーロードに限らず、どんな型でもオーバーロードしても問題はない。これは、コンパイラが明示的なパラメータ設定を別の方法で処理するだけです。申し訳ありませんが、私は2週間MT5を実行していません。なぜなら、過去3回のアップデート後に非常に多くの怒りの投稿を見たので、コンパイラが動作していないか、あるいは私が間違ったビルドを持っているかどうかを調べることさえしたくないのです。このようにclass CA { public: void set(int i,int j,long n){Print("перегрузка long");}; void set(int i,int j,double x){Print("перегрузка double");}; }; void OnStart() { //--- CA a; int Int=3; double doubl=4; a.set(1,2,Int); a.set(1,2,doubl); }は、ビルド362で動作します。 Mykola Demko 2010.12.24 17:21 #2456 mql5:はい、バグです。ビルドがリリースされた後に修正します。とりあえず、このa.set((int)1,(int)2,Long); ありがとうございます。その点は留意しておきます。 Aleksandr Chugunov 2010.12.24 17:40 #2457 Yedelkin: なるほど。どうやらdenkirは#include<IndicatorsIndicator.mqh>を 宣言していないようです。 しかし、Handbookを検索しても、この機能を見つけることはできない。これでいいのか!?これは、外部クラスのメソッドだ!!!! Yedelkin 2010.12.24 17:47 #2458 AlexSTAL: それだけじゃダメなんだ! これは、外部クラスのメソッドです!!! 私は専門家ではないので、すべて手書きで書きたいのです。デンキルに 順を追って教えてください。 Denis Kirichenko 2010.12.24 18:06 #2459 おそらく、そのようなものを追加する必要があるのでしょう。#include <Arrays\Array.mqh> #include <Arrays\ArrayObj.mqh> しかし、私は言及されたクラスのオブジェクトを必要と しません。必要なのは、私が説明した基本型文字列の ための簡単な関数です。 Yedelkin 2010.12.24 18:13 #2460 denkir: おそらく、そのようなものを追加する必要があるのでしょう。 しかし、私は言及されたクラスのオブジェクトを必要と しません。必要なのは、私が説明したような、基本型stringの ための簡単な関数です。 しかし、クラスのメソッドにアクセスするには、対応するクラス、この場合はCIndicator クラスを宣言する必要があります(MQL5 Reference / Standard Library / Indicator Classes / Basic Classes / CIndicator) 。そうでしょう? 1...239240241242243244245246247248249250251252253...3185 新しいコメント 取引の機会を逃しています。 無料取引アプリ 8千を超えるシグナルをコピー 金融ニュースで金融マーケットを探索 新規登録 ログイン スペースを含まないラテン文字 このメールにパスワードが送信されます エラーが発生しました Googleでログイン WebサイトポリシーおよびMQL5.COM利用規約に同意します。 新規登録 MQL5.com WebサイトへのログインにCookieの使用を許可します。 ログインするには、ブラウザで必要な設定を有効にしてください。 ログイン/パスワードをお忘れですか? Googleでログイン
これはクラスメソッドです
https://www.mql5.com/ru/docs/standardlibrary/technicalindicators/cindicator
#include<IndicatorsIndicator.mqh>
なるほど。どうやらdenkirは#include<IndicatorsIndicator.mqh>を 宣言していないようです。
しかし、Referenceを検索しても、この機能を見つけることはできない。
では、なぜコンパイラは誓うのか、呼び出しの曖昧さは何なのか。
どうやらintから longまたはその逆の型が 変換され、おそらくあなたは唯一のパラメータの数によって、または自動的に変換されていない型によってできるリロード関数
SZZ: long のみで動作し、パラメータとして渡された int は自動的に long にキャストされます。
どうやらintから longまたはその逆の型が 変換され、おそらくあなたは唯一のパラメータの数によって、または自動的に変換されていない型によってできるリロード関数
SZY: long のみで動作し、パラメータとして渡した int 型は自動的に long に変換されます。
同じ曲です。
ポイントは、例外なくすべての型に関数のオーバーロードをさせることでした。
また、型がiとjのコード値に対応していない場合は、警告を発生させる。
開発者の皆様、オーバーロードされた関数の曖昧な呼び出しとは何か教えてください(コンパイラが悪態をついているのはこのことです)。
set' - オーバーロードされた関数へのあいまいな呼び出し。
はい、エラーが発生しました。ビルドリリース後に修正します。
を使用することができます。
intやlongのオーバーロードに限らず、どんな型でもオーバーロードしても問題はない。
これは、コンパイラが明示的なパラメータ設定を別の方法で処理するだけです。
申し訳ありませんが、私は2週間MT5を実行していません。なぜなら、過去3回のアップデート後に非常に多くの怒りの投稿を見たので、コンパイラが動作していないか、あるいは私が間違ったビルドを持っているかどうかを調べることさえしたくないのです。
このように
は、ビルド362で動作します。
はい、バグです。ビルドがリリースされた後に修正します。
とりあえず、この
なるほど。どうやらdenkirは#include<IndicatorsIndicator.mqh>を 宣言していないようです。
しかし、Handbookを検索しても、この機能を見つけることはできない。
これでいいのか!?
これは、外部クラスのメソッドだ!!!!
それだけじゃダメなんだ!
これは、外部クラスのメソッドです!!!
おそらく、そのようなものを追加する必要があるのでしょう。
しかし、私は言及されたクラスのオブジェクトを必要と しません。必要なのは、私が説明した基本型文字列の ための簡単な関数です。
おそらく、そのようなものを追加する必要があるのでしょう。
しかし、私は言及されたクラスのオブジェクトを必要と しません。必要なのは、私が説明したような、基本型stringの ための簡単な関数です。
しかし、クラスのメソッドにアクセスするには、対応するクラス、この場合はCIndicator クラスを宣言する必要があります(MQL5 Reference / Standard Library / Indicator Classes / Basic Classes / CIndicator) 。そうでしょう?