タイピングに関する質問 - ページ 5 12345678910 新しいコメント Igor Makanu 2018.12.10 06:24 #41 Ilya Malev: 追伸:ああ、つまり二項演算子を単項演算子としてオーバーロードしたい場合(2-binaryを1-binaryに)、そうですね、もちろん日付ではありませんね。唯一の例外は[]です。MQLでは、何をどのようにオーバーロードするかが厳密に規定されています。C++では、何をオーバーロードするかは問題ではなく、同じように呼び出すことになります - ^を単項としてオーバーロードすれば、将来も単項として使うことになります Ilya Malev 2018.12.10 06:27 #42 Igor Makanu:そう、MQLでは何をどのようにオーバーロードするかが厳密に規定されています。C++では何をオーバーロードするかは関係なく、同じように呼び出せます。^を単項としてオーバーロードすれば、将来も単項として使うことになります。そうですね、mqlにはまだ多くの制限があるようなので、改善の余地がありますね :)また、2値演算を単項演算としてオーバーロードできるようにしてほしい(逆も然り)。 いずれにせよ、オーバーロードすると本来の意味が失われることが多いので、それぞれ、使用の論理がこの意味と結びつかなくなる。許可するのが筋だろう。 Igor Makanu 2018.12.10 06:34 #43 Ilya Malev:そうですね、mqlにはまだまだ制約が多いようで、改善の余地がありますね :)たくさんあって、この制限が現れては消えて、5つになって...。開発者が開発環境を変更することもあるようです )))) 例えば、ヘルプのオーバーロード操作(演算子)の項では、行列を扱う例がコンパイルされていませんが、以前は動作していたことは知っています、現在は、演算のオーバーロードに関わるパラメータの種類のチェックがあります、つまり、私が int operator*(const int) とすると、int operator*(int) はコンパイルできませんし、ヘルプにそのような例がありましたが、コンパイルが止まってしまいました。 Vasiliy Sokolov 2018.12.10 10:03 #44 Ilya Malev:プログラマーの皆さん、私は長い間、ある疑問に頭を悩ませていました。関数の戻り値を暗黙のうちに型付けすることは可能でしょうか?そうすれば、クラスのメソッドは、メソッドを呼び出すという外部的なアイデンティティを持つ、異なる型の値を返すことになる。 また、どのような目的で必要なのか、お聞かせください。それがないと宇宙船は作れないのですか? Ilya Malev 2018.12.10 11:19 #45 Vasiliy Sokolov:何のために必要なのか、お聞かせください。それがないと宇宙船は作れないのですか?そして、お聞きしたいのですが、どのようなことに興味をお持ちなのでしょうか? Dmitry Fedoseev 2018.12.10 12:01 #46 ついでに言うと、return型のオーバーロードでもない。 一般に、このアイデアは実現性から非常に遠い。 pavlick_ 2018.12.10 12:03 #47 Vasiliy Sokolov:何のために必要なのか、お聞かせください。それがないと宇宙船は作れないのですか?私も最初は批判的でしたが、自分にも使えると思ったんです。 class Point { public: double price; long time; operator double()const {return price;} operator long()const {return time;} }; class Array { Point p[3] = {{0,1}, {2,3}, {4,5}}; public: const Point &operator[](unsigned i) {return p[i];} }; void start() { Array a; double d = a[2]; // d == 4 long t = a[2]; // t == 5 } Ilya Malev 2018.12.10 12:05 #48 Dmitry Fedoseev:ついでに言うと、return型のオーバーロードでもない。キャプテン・オビュアーがレスクに? Dmitry Fedoseev 2018.12.10 12:16 #49 Ilya Malev:キャプテン・オビュアーがレスクに?忘れた方はShift+Alt。 Vasiliy Sokolov 2018.12.10 12:23 #50 C#には、明示的な変換と暗黙的な変換があります。便利な砂糖のようですが、非常に暗黙的でIntelliSenseは沈黙してしまうでしょう。1ヶ月もすれば、どのクラスが何に変換できるのか忘れてしまいます。一般的なOOPゲームだが、いい感じ。 12345678910 新しいコメント 取引の機会を逃しています。 無料取引アプリ 8千を超えるシグナルをコピー 金融ニュースで金融マーケットを探索 新規登録 ログイン スペースを含まないラテン文字 このメールにパスワードが送信されます エラーが発生しました Googleでログイン WebサイトポリシーおよびMQL5.COM利用規約に同意します。 新規登録 MQL5.com WebサイトへのログインにCookieの使用を許可します。 ログインするには、ブラウザで必要な設定を有効にしてください。 ログイン/パスワードをお忘れですか? Googleでログイン
追伸:ああ、つまり二項演算子を単項演算子としてオーバーロードしたい場合(2-binaryを1-binaryに)、そうですね、もちろん日付ではありませんね。唯一の例外は[]です。
MQLでは、何をどのようにオーバーロードするかが厳密に規定されています。C++では、何をオーバーロードするかは問題ではなく、同じように呼び出すことになります - ^を単項としてオーバーロードすれば、将来も単項として使うことになります
そう、MQLでは何をどのようにオーバーロードするかが厳密に規定されています。C++では何をオーバーロードするかは関係なく、同じように呼び出せます。^を単項としてオーバーロードすれば、将来も単項として使うことになります。
そうですね、mqlにはまだ多くの制限があるようなので、改善の余地がありますね :)
また、2値演算を単項演算としてオーバーロードできるようにしてほしい(逆も然り)。
いずれにせよ、オーバーロードすると本来の意味が失われることが多いので、それぞれ、使用の論理がこの意味と結びつかなくなる。許可するのが筋だろう。
そうですね、mqlにはまだまだ制約が多いようで、改善の余地がありますね :)
たくさんあって、この制限が現れては消えて、5つになって...。開発者が開発環境を変更することもあるようです ))))
例えば、ヘルプのオーバーロード操作(演算子)の項では、行列を扱う例がコンパイルされていませんが、以前は動作していたことは知っています、現在は、演算のオーバーロードに関わるパラメータの種類のチェックがあります、つまり、私が
int operator*(const int) とすると、int operator*(int) はコンパイルできませんし、ヘルプにそのような例がありましたが、コンパイルが止まってしまいました。
プログラマーの皆さん、私は長い間、ある疑問に頭を悩ませていました。関数の戻り値を暗黙のうちに型付けすることは可能でしょうか?そうすれば、クラスのメソッドは、メソッドを呼び出すという外部的なアイデンティティを持つ、異なる型の値を返すことになる。
また、どのような目的で必要なのか、お聞かせください。それがないと宇宙船は作れないのですか?
何のために必要なのか、お聞かせください。それがないと宇宙船は作れないのですか?
そして、お聞きしたいのですが、どのようなことに興味をお持ちなのでしょうか?
ついでに言うと、return型のオーバーロードでもない。
一般に、このアイデアは実現性から非常に遠い。
何のために必要なのか、お聞かせください。それがないと宇宙船は作れないのですか?
私も最初は批判的でしたが、自分にも使えると思ったんです。
ついでに言うと、return型のオーバーロードでもない。
キャプテン・オビュアーがレスクに?
キャプテン・オビュアーがレスクに?
忘れた方はShift+Alt。