84669 人が学習中
152542 人が学習中
20005 人が学習中
5487 人が学習中
7821 人が学習中
359900 人が学習中
3350 人が学習中
180660 人が学習中
48569 人が学習中
18603 人が学習中
40936 人が学習中
1549 人が学習中
1183 人が学習中
32909 人が学習中
STL ソースコード分析のコピー関数を見ていたら、このコードを見つけました
この __copy_dispatch は、オーバーロードされた () 演算子を持つ構造体であり、コピーで呼び出される場合、直接
直接この構造体を使用して () 演算子を呼び出します。ただし、構造体オブジェクトを使用しません。
これでいいですか?私はすぐに c++primer を調べましたが、答えが見つかりませんでした。 この質問に答えるのを手伝ってください。どうもどうも。
リーリー
これはクラスを呼び出しています
のデフォルトのコンストラクターであり、その機能は一時オブジェクトを生成することです。次へ
の機能は、first、last、result を実際のパラメータとして使用して、この一時オブジェクトに対して Operator() を呼び出すことです。
この構造体を使用して、() 演算子が呼び出されます。これが、名前のないオブジェクト
実際、lambdaはファンクターの効果を実現するためにoperator()をオーバーロードするクラスも作成しました。
lambda
リーリー
これはクラスを呼び出しています
リーリーのデフォルトのコンストラクターであり、その機能は一時オブジェクトを生成することです。次へ
リーリーの機能は、first、last、result を実際のパラメータとして使用して、この一時オブジェクトに対して Operator() を呼び出すことです。
この構造体を使用して、() 演算子が呼び出されます。これが、名前のないオブジェクト
を作成することを意味します。実際、
lambda
はファンクターの効果を実現するためにoperator()をオーバーロードするクラスも作成しました。