000
05.09.2006, 23:17 Uhr
Yadgar
|
High!
Aupperle fragt mich auf Seite 651, ob es denn möglich sei, den (parameterlosen) Standardkonstruktor und einen Allgemeinen Konstruktor mit zwei Parametern zu einem Konstruktor zusammenzufassen... mein erster Gedanke war "variable Parameterliste", und die Deklaration des Standardkonstruktors mit Ellipse wird auch anstandslos kompiliert - aber wie implementiere ich die Unterscheidung zwischen keinem, einem und zwei Parametern? Ein erster fester Parameter mit der Anzahl der sonstigen noch folgenden Parameter kann ja hier wohl nicht die Lösung sein...
Hier der Code:
C++: |
// Vererbung mit impliziten Standardkonstruktoren // (AUPPERLE, S. 651f, Übung 26-13)
#include <iostream> using namespace std;
struct Point { int x, y; Point(...); Point(int in_x, int in_y); };
Point::Point(...) : x(0), y(0) {}
Point::Point(int in_x, int in_y) : x(in_x), y(in_y) {}
struct NamedPoint : public Point { string name; };
int main() { NamedPoint np; cout << np.name << endl; }
|
Bis bald im Khyberspace!
Yadgar -- Flagmaker - ein Programmier-Blog |