2012-04-09 3 views
3

可能性の重複:
How to use base class's constructors and assignment operator in C++?親クラスの演算子の使い方は?

class A 
{ 
protected: 
    void f(); 
} 

class B : public A 
{ 
protected: 
    void f() 
    { 
     A::f(); 
    } 
} 

私たちは、このように親クラスの機能を利用することができますが、私は親クラスの演算子を使用する方法がわかりません。

+0

(。私はこれがC++だったと推測。私はあなたの質問を編集し、適切な言語タグを置くことによって、間違った推測あれば修正してください) – Mat

+0

http://stackoverflow.com/質問/ 1226634/how-to-use-base-classs-constructors-and-assignment-operator-in-cはC++の親クラスから演算子を呼び出すいくつかの例を持っています – Mat

答えて

6

ユーザー定義型の演算子は、ファンキーな名前のメンバ関数です。だから、それはあなたの例にはかなり同様に行く:

#include <iostream> 

class A 
{ 
protected: 
    A& operator++() { std::cout << "++A\n"; return *this; } 
}; 

class B : public A 
{ 
public: 
    B& operator++() 
    { 
     A::operator++(); 
     return *this; 
    } 
}; 


int main() 
{ 
    B b; 
    ++b; 
} 
関連する問題