Gast
#1121974
virtual void showDate(int year , int month , int day ) = 0; was ist da der Unterschied virtual void showDate(int year , int month , int day ) const = 0;
|
Anzeige
|
Verstehe den Unterschied nicht
Gast
#1121974
virtual void showDate(int year , int month , int day ) = 0; was ist da der Unterschied virtual void showDate(int year , int month , int day ) const = 0;
Gast
#1121990
const
Gast
#1122000
Der Unterschied ist das mit Const fest eine 0 vereinbart wird soviel ich noch weiss. Also eine Konstante sozusagen. Anderst ausgedrückt kann man nur lesend zugegriffen werden. Im obrigen Beispiel können die Werte durch das Programm geändert werden.
Gast
#1122005
das "= 0" nach der methodendeklaration zwingt (in kombination mit 'virtual') jede ableitung der klasse dazu, diese methode zu implementieren. (Siehe: http://en.wikipedia.org/wiki/Virtual_function#Abstract_classes_and_pure_virtual_functions) "const" nach der methode sagt dem compiler, das der code dieser methode nichts an zugehörigen objektvariablen ändert. damit kann der c++ copmpiler code optimieren und syntaktisch checken. probiers einfach aus. Antwort schreibenBitte melde dich an, um einen Beitrag zu schreiben. |
Anzeige
|