エラー、バグ、質問 - ページ 2466 1...245924602461246224632464246524662467246824692470247124722473...3185 新しいコメント A100 2019.05.20 22:50 #24651 論理エラー void f( const int ) {} void f( const int& ) {} void OnStart() { int i = 0; f( i ); //(1) нормально const int j = 0; f( j ); //(2) Error: 'f' - ambiguous call to overloaded function with the same parameters } (1)と(2)はどう違うのですか? fxsaber 2019.05.20 22:54 #24652 A100:論理エラー (1)と(2)はどう違うのですか?1枚目にエラーがあるようです。また、2枚目はj+0でバイパスすることができます。 A100 2019.05.20 23:30 #24653 fxsaber:1枚目にエラーがあるようです。また、2枚目はj+0でバイパス することができます。算術演算は なくてもできるのに、なぜ余計な演算が必要なのか? const int j = 0; f((int)j); fxsaber 2019.05.20 23:34 #24654 A100:なぜ余計な算術演算を するのか? コンパイル後はないでしょう。 A100 2019.05.21 00:10 #24655 fxsaber:コンパイル後はないでしょう。そうなります。ただ、一般的なケースでは、コンパイル時のエラーがランタイムエラーに移行してしまうのです。 void f( const int ) { Print( 1 ); } #define int short //... void f( const int ) { Print( 2 ); } void f( const int& ) { Print( 3 ); } void OnStart() { //Результат: int i = 0; f( i ); //2 const int j = 0; f( j+0 ); //1 } 結果:2:1 そして、私の バージョンでは:2:2 void OnStart() { //Результат: int i = 0; f( i ); //2 const int j = 0; f((int)j); //2 } fxsaber 2019.05.21 05:39 #24656 A100:そうなります。一般に、コンパイル時のエラーがランタイムエラーに移行するというだけのことです。 結果:2:1 その結果、ソースに混ざってしまうのです。ランタイム加算はないと思います。コンパイラが式に対応したint関数を呼び出すだけなんです。しかし、式そのものを計算するわけではありません。 Sergey Dzyublik 2019.05.21 09:06 #24657 C++のイテレータアナログを実装しようと考えていました。しかし、悲しみが湧いてきた...。 開発者の方に質問です。 MQLで許可されている単項演算子のうち、デリファレンス操作を実装するためのベストプラクティスとして提案されているものはどれですか? 単項演算子 +,-,++,--,!,~. TheXpert 2019.05.21 09:12 #24658 Sergey Dzyublik:MQLで許可されている単項演算子のうち、デリファレンス操作を実装するためのベストプラクティスとして提案されているものはどれですか? 単項演算子 +,-,++,--,!,~.いやあ、この掲示板にはベストプラクティスを考える人がいるんですね。 最も論理的なのは、それがないためにシフトすることです。(すみません、パラメータが必要で、その後に滅多に使わないものとして追加します) でも、1つでも大丈夫でしょうか? せいぜいこのくらいでいいんです。 (~w).F()です。 ポイント優先のため、必ずブラケットをかける必要があります。 Igor Makanu 2019.05.21 09:43 #24659 Sergey Dzyublik:開発者の方に質問です。 MQLで許可されているどの単項演算子のオーバーロードが、再参照操作の実装のベストプラクティスとして提案されていますか? 単項演算子 +,-,++,--,!,~.MQLでは何を再参照できるのですか?- オブジェクトへのポインタであっても、ポインタ名でアクセスした場合は、デリファレンスされます。 SZZY:そのエネルギーを何か役に立つことに注げばいいのですが......。先月、何度目かの二次元配列のラッパークラスを作ろうとしたら、普通の二次元配列 arr[1][2] としてアドレスするための [] をオーバーロードすることができず、MQL でポインタを再参照するという話か ... TheXpert 2019.05.21 09:55 #24660 Igor Makanu: 通常の2次元配列arr[1][2]としてアドレスするために[]をオーバーロードすることはできていませんし、MQLのポインタ・デレフェレンシングの話ですか......。あるある) 1...245924602461246224632464246524662467246824692470247124722473...3185 新しいコメント 取引の機会を逃しています。 無料取引アプリ 8千を超えるシグナルをコピー 金融ニュースで金融マーケットを探索 新規登録 ログイン スペースを含まないラテン文字 このメールにパスワードが送信されます エラーが発生しました Googleでログイン WebサイトポリシーおよびMQL5.COM利用規約に同意します。 新規登録 MQL5.com WebサイトへのログインにCookieの使用を許可します。 ログインするには、ブラウザで必要な設定を有効にしてください。 ログイン/パスワードをお忘れですか? Googleでログイン
論理エラー
(1)と(2)はどう違うのですか?
論理エラー
(1)と(2)はどう違うのですか?
1枚目にエラーがあるようです。また、2枚目はj+0でバイパスすることができます。
1枚目にエラーがあるようです。また、2枚目はj+0でバイパス することができます。
算術演算は なくてもできるのに、なぜ余計な演算が必要なのか?
なぜ余計な算術演算を するのか?
コンパイル後はないでしょう。
コンパイル後はないでしょう。
そうなります。ただ、一般的なケースでは、コンパイル時のエラーがランタイムエラーに移行してしまうのです。
結果:2:1
そして、私の バージョンでは:2:2
そうなります。一般に、コンパイル時のエラーがランタイムエラーに移行するというだけのことです。
結果:2:1
その結果、ソースに混ざってしまうのです。ランタイム加算はないと思います。コンパイラが式に対応したint関数を呼び出すだけなんです。しかし、式そのものを計算するわけではありません。
C++のイテレータアナログを実装しようと考えていました。しかし、悲しみが湧いてきた...。
開発者の方に質問です。
MQLで許可されている単項演算子のうち、デリファレンス操作を実装するためのベストプラクティスとして提案されているものはどれですか?
MQLで許可されている単項演算子のうち、デリファレンス操作を実装するためのベストプラクティスとして提案されているものはどれですか?
いやあ、この掲示板にはベストプラクティスを考える人がいるんですね。
最も論理的なのは、それがないためにシフトすることです。(すみません、パラメータが必要で、その後に滅多に使わないものとして追加します) でも、1つでも大丈夫でしょうか?
せいぜいこのくらいでいいんです。
(~w).F()です。
ポイント優先のため、必ずブラケットをかける必要があります。
開発者の方に質問です。
MQLで許可されているどの単項演算子のオーバーロードが、再参照操作の実装のベストプラクティスとして提案されていますか?
MQLでは何を再参照できるのですか?- オブジェクトへのポインタであっても、ポインタ名でアクセスした場合は、デリファレンスされます。
SZZY:そのエネルギーを何か役に立つことに注げばいいのですが......。先月、何度目かの二次元配列のラッパークラスを作ろうとしたら、普通の二次元配列 arr[1][2] としてアドレスするための [] をオーバーロードすることができず、MQL でポインタを再参照するという話か ...
通常の2次元配列arr[1][2]としてアドレスするために[]をオーバーロードすることはできていませんし、MQLのポインタ・デレフェレンシングの話ですか......。
あるある)