問題タブ [stream-operators]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c++ - to_string がテンプレート化されていないのはなぜですか?
to_string
これはテンプレート化され、内部で使用されているだけだと思いstringstream
ました。
そうではありませんか?
私はこれを行うことができるようにしたい:
しかし、明らかにそれは機能しません。原因to_string
はテンプレート化されていません。
c++ - basic_ostream による operator<< のオーバーロード
ユーザー定義クラスを使用したストリーム操作の典型的なヘッダーが通常次C
のようなものである理由:
このようではありません:
私の質問は、なぜストリーム演算子の通常のオーバーロードが ofのstd::ostream
typedef である で行われるのか、なぜ直接行われないのかということです。char
std::basic_ostream
std::basic_ostream
例えば:
ここに書かれていることは、 ( 、、 ...)にoperator<<
特化したストリーム オブジェクトのみを使用するように制限します。usingが よりも制限的である場合、ストリーム演算子のオーバーロードについて話すときになぜ言及されないのでしょうか?char
std::ostream
std::ostringstream
std::ostream
std::basic_ostream
std::basic_ostream
c++ - C++ コンパイル エラー。ストリーム演算子のオーバーロード
C++ ストリーム演算子のオーバーロードを学習しています。これを Visual Studio でコンパイルできません。
演算子セクションでは、コンパイラはistream&
直後のカラットを強調表示し、.ins
no operator >> matches these operands
誰かがすぐに実行して、何が問題なのか教えてもらえますか?
c++ - 抽象クラスの演算子 <<、C++
抽象クラスがある場合、それを「Vertebrate」と呼びましょう。それにはフィールドがあり、子クラスでオーバーライドされて呼び出されるstd::string name;
純粋仮想メソッド
があります。virtual void print(std::ostream&) const noexcept = 0;
operator<<
ポリモーフィズムがどのように機能するか、およびoperator<<
継承されたクラスに実装する方法がわかりました。
私が得られないもの:
私はこれを理解していません:operator<<
仮想印刷機能を使用する、その抽象クラスでの実装方法。このコードが機能しないのはなぜですか? 私の抽象クラスにはoperator<<
.
それが抽象クラスのコードです。