De presentatie wordt gedownload. Even geduld aub

De presentatie wordt gedownload. Even geduld aub

Static Keyword static voor functieleden functie niet voor een object aangeroepen class K {... static int minimum( int i, int j); } aanroep: K::minimum(

Verwante presentaties


Presentatie over: "Static Keyword static voor functieleden functie niet voor een object aangeroepen class K {... static int minimum( int i, int j); } aanroep: K::minimum("— Transcript van de presentatie:

1 static Keyword static voor functieleden functie niet voor een object aangeroepen class K {... static int minimum( int i, int j); } aanroep: K::minimum( 2,3); ipv object K.minimum( 2,3); voor dataleden variabelen behoren niet tot een object, maar tot de klasse zelf dwz dat ze maar in enkelvoud voorkomen, ongeacht het aantal objecten dat er van de klasse is

2 Eigen operatoren Zelf definiëren van operatoren (op voorwaarde dat ten minste 1 van de operanden een klasse-object is Lijst van operatoren Prioriteitsregels blijven behouden c = a + b ipv c= a.telop(b)

3 Eigen operatoren voorbeeld Vectorsom:( x 1, y 1 ) + ( x 2, y 2 ) = ( x 1 + x 2, y 1 + y 2) class Vector {... Vector operator+( const vector &v) const{ return Vector( x + v. x, y + v. y); } int main () { Vector u( 3,1), v( 1,2), s; s = u + v; // s = u. operator+( v); return 0;}

4 Impliciete conversie dmv een constructor class K { public: K() {...} K (T x) {...} // constructor met 1 par van type T // + ev. defaultparameters } Dan mag: K k; T t; k = t; // impliciete conversie " k = t " wordt (door compiler) automatisch " k = K( t) "

5 Friend-functie is geen lid van de klasse, maar heeft toch toegang tot private leden van de klasse! Class K{ public: K(int ii){i = ii;} Private: int i; friend void toon(K x); } void toon (K x){cout << x.i<<endl;} Int main() {K y(5); toon(y); return 0;} //uitvoer: 5

6 Friend functie inbreuk op OO en inkapseling vermijden indien mogelijk


Download ppt "Static Keyword static voor functieleden functie niet voor een object aangeroepen class K {... static int minimum( int i, int j); } aanroep: K::minimum("

Verwante presentaties


Ads door Google