2017-06-27 8 views
-4

これは仮説ですが、2つのオーバーロードされたコンストラクタを持つクラスがあります。いずれもデフォルトのコンストラクタはありません。私が他のコンストラクタから1つのコンストラクタを呼び出す場合、それは再帰的なものでしょうか?例:関数は異なるパラメータで同じ名前の多重定義関数ではない、自体を呼び出すとき他のインスタンスの1つを呼び出すオーバーロードされた関数を持っていると、再帰関数と見なされますか?

class Example 
{ 
    Example(const int integer) 
    { 
      //Constructor Code Here 
    } 

    Example(argument) 
    { 
      Example object(68); 
      //Rest of constructor code 
    } 
}; 
+0

ようこそスタックオーバーフロー。 [The Tour](http://stackoverflow.com/tour)を読み、[ヘルプセンター](http://stackoverflow.com/help/asking)の資料を参考にしてください。ここに聞いてください。 –

+5

コードを投稿した方が簡単に回答できます。 – Mikhail

+2

関数/メソッドは、自分自身を呼び出すと再帰的です...あなたの例のように聞こえますが、コピーコンストラクタは他のコンストラクタを呼び出しますが、コンストラクタはそれ自身を呼び出しません。だからあなたの説明から、答えはノーと思われるでしょう。 –

答えて

4

なし

再帰です。あなたが何を記述しているかは、再帰ではありません。 delegating constructorsは、C++ 11で導入された新機能です。そして、定義によって: "委譲するコンストラクタは再帰的にすることはできません"。

関連する問題