Thread super() in c++? (1 answers)
Opened by pktm at 2008-04-03 14:26

murphy
 2008-04-03 16:43
#107810 #107810
User since
2004-07-19
1776 Artikel
HausmeisterIn
[Homepage]
user image
In C++ existiert das Schlüsselwort super nicht, vermutlich weil es schwierig wäre, bei Klassenhierarchien mit Mehrfachvererbung das Verhalten des Schlüsselwortes sinnvoll zu definieren. Man muss den Namen der Superklasse, die man initialisieren will, also schon explizit angeben – zum Beispiel so:
Code: (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
class A {
private:
const int x;

public:
A(int _x) : x(_x) {
}

inline int getX() const {
return x;
}
} ;

class B : public A {
private:
const int y;

public:
B(int _x, int _y) : A(_x), y(_y) {
}

inline int getY() const {
return y;
}
} ;
When C++ is your hammer, every problem looks like your thumb.

View full thread super() in c++?