001
22.09.2021, 13:16 Uhr
ao
(Operator)
|
2 Fehler:
1. Die Erzeugung eines Objekts mittels parameterlosem Konstruktor geht so:
C++: |
int main() { konstr k; // nicht konstr k(); }
|
konstr k(); an der Stelle erzeugt überhaupt kein Objekt, sondern deklariert eine Funktion namens k, die parameterlos ist und ein konstr-Objekt retourniert. Also was ganz anderes.
2. Fehler: Dem Konstruktor (konstr(); innerhalb von class konstr) fehlt der Body. Formal richtig ist das Programm demnach so:
C++: |
#include <iostream> using namespace std; class konstr { public: int a = 1; konstr (int); konstr () {} };
int main () { konstr k; cout << "Hello, World!\n"; cout << k.a; }
|
Schön ist das freilich immer noch nicht (öffentliche Member-Variable und so), aber es kompiliert und macht vermutlich das, was du willst. |