12.07.2015 Views

Cursul POO - Informatica aplicata si programare - Universitatea ...

Cursul POO - Informatica aplicata si programare - Universitatea ...

Cursul POO - Informatica aplicata si programare - Universitatea ...

SHOW MORE
SHOW LESS
  • No tags were found...

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

Curs 1-2. Să ne reamintim … 11Pentru eticheta File View (fig. 1.16) fereastra din stânga va conŃine toate fişierelecare compun proiectul, în funcŃie de tipul lor. Din nou, un dublu click asupra unuinume de fişier, va face ca în fereastra programului să se afişeze conŃinutul fişieruluirespectiv.Fig. 1.16 . Aşa arată File View1.2.2 FuncŃii inline. La ce or fi bune?Să modificăm declaraŃia clasei punct_plan ca şi în codul de mai jos:class punct_plan{int coordy;public:int coordx;inline void setcoordy(int cy){coordy=abs(cy);};inline int getcoordy() {return coordy;};};Ce am modificat? Am introdus cuvintele inline în faŃa definirii metodelor,transformâdu-le astfel în funcŃii inline. Dacă compilăm şi executăm programul,constatăm că nimic nu s-a schimbat. Atunci, ce este de fapt o funcŃie inline?Să ne reamintim care este mecanismul care se pune în mişcare, atunci când într-unprogram se face un apel de funcŃie (fig. 1.17):• la întâlnirea unui apel de funcŃie, se salvează în stivă adresa din memorie acodului următoarei instrucŃiuni executabile, precum şi valorile parametrilorfuncŃiei;• se sare din secvenŃa normală de instrucŃiuni şi se execută prima instrucŃiunedin funcŃie, aflată la o adresă cunoscută din memorie;• se execută toate instrucŃiunile funcŃiei, iar la sfârşit se extrage din stivă adresaurmătoarei instrucŃiuni executabile din programul apelant;• se continuă execuŃia normală a programului.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!