2017-12-19 1 views
0
class cl { 
    public: 
     cl(int i) { val=i; } 
     int val; 
     int double_val() { return val+val; } 
}; 

Variable val wird nach dem Konstruktor deklariert, der es zuweist. Aber trotzdem funktioniert dieser Code. Ist 'val' für Konstrukteure nicht in Reichweite?Scope innerhalb der Klasse C++

+0

@Downvoter, was ist der Grund für den Downvote? Diese Frage enthält [mcve], zusätzlich zu einer klaren und spezifischen Frage. Wenn der Grund für den Downvote "keine Forschung" war, hätten Sie ein Duplikat vorschlagen können. –

Antwort

4

Die vollständige Definition der Klasse steht ihren Mitgliedern zur Verfügung. So wird val tatsächlich vor der Implementierung des Konstruktors deklariert.

Verwandte Themen