2011-02-08 7 views

答えて

2

A(A a){/*do something*/}は、コピーコンストラクタとして役立つことができます。

3

ありませんが、パラメータを完全に無視し、すでに同じ効果を持つ別のコンストラクタがあります。

あなたはより現実的な例を与えることができれば、我々はより多くの有用な情報を与えることができるかもしれ...

0

あなたは質問が非常に不明ですが、基本的にあなたがクラスを持っていれば、それはコンストラクタを持ち、同じクラスのインスタンスをとり、コピーコンストラクタを持っています。元のインスタンスと同じ内部値を持つ新しいインスタンスを作成するコンストラクタです。

編集 - もちろん、あなたのコンストラクタは新しいインスタンスを作成する以外の何かを行うと仮定します。

1

コピーコンストラクタを必要としない限り、利点はありません。このオブジェクトがコピーコンストラクタセマンティックを使用するのではなく、クローン可能でなければならない場合は、clone()メソッドを使用することをお勧めします。

2

他にも述べたように、コピーコンストラクタがあります。コピーコンストラクタが必要な理由は、number of reasonsです。それらの一部は次のとおりです。

  1. クローン方式の代替案を提供することができます。 (これはClonableインターフェイスを介して実装されています)
  2. コピーコンストラクタは簡単に実装できます。
  3. 別のコンストラクタを使用してコピーを構築できます(元のオブジェクトからデータを抽出し、通常のコンストラクタに転送することによって)。

コピーコンストラクタの詳細と使用する理由(必要な場合)をこの記事に追加しました。

また、デフォルトのコンストラクタを提供

はまだ特に依存性注入または直列化が考慮されているシナリオでは、良い習慣と見なされる可能性があるなど、このようなdecoratorproxyとして委任ベースの設計パターンの数に有用である可能性

0

関連する問題