2012-03-01 31 views
2

私は、基本クラス(ヘッダ)を持っている:継承されたクラスのコンストラクタ定義を指定するにはどうすればよいですか?

class BaseClass 
{ 
    public: 
     BaseClass(int); // note no default constructor. 
} 

し、それを派生するクラス:

class DerivedClass : public BaseClass 
{ 
    public: 
     DerivedClass(void); 
} 

DerivedClass::DerivedClass (void) // note SPECIFICALLY no parameters. 
{ 
    super (10); // equivalent of what I am trying to do in Java (I think) 
} 

は、どのように私は私の派生クラスで継承したクラスのコンストラクタを呼ぶのですか?このような

+0

可能重複[基本クラスとC++で呼び出し、派生クラスのコンストラクタ](http://stackoverflow.com/questions/5764364/base-class-派生クラス生成者 - コールイン - C) – Nim

答えて

1

DerivedClass::DerivedClass (void) : BaseClass(10) 
{ } 

注:構文に慣れていない場合は、メンバー初期化リストを探してください。

+0

銃のああ母、私はとてもばかげている。私はcplusplus.comでそれを読んでいて、まっすぐ行っているに違いない。ありがとう。誰かが興味を持っているリンク:http://www.cplusplus.com/doc/tutorial/inheritance/ – Cheetah

0

これは、あなたが何をしたいです:の

DerivedClass(void):BaseClass(10) { 
    //blah blah blah 
} 
1
class BaseClass 
{ 
    public: 
     BaseClass(int) {}; 
} ; 
class DerivedClass : public BaseClass 
{ 
    public: 
     DerivedClass(void); 
}; 

DerivedClass::DerivedClass (void) 
:BaseClass(10) 
{ 

} 
関連する問題