12.07.2015 Views

notiuni de programare obiectuala - Informatica aplicata si ...

notiuni de programare obiectuala - Informatica aplicata si ...

notiuni de programare obiectuala - Informatica aplicata si ...

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Capitolul 1. … noţiuni <strong>de</strong> <strong>programare</strong> obiectuală 31Dacă compilăm programul, vom obţine erori <strong>de</strong> compilare (fig. 1.23).Apelul variabilei coordy este făcutincorect pentru o funcţie statică!Fig. 1.22. Funcţia statică nu poate accesa coordy. Nu există this!Eroarea se datorează faptului că, o funcţie statică, fiind <strong>de</strong> asemenea un atribut alclasei, nu poate instanţia corect variabila coordy. Pur şi <strong>si</strong>mplu nu ştie cărui obiect îiaparţine, <strong>de</strong>oarece funcţiile statice nu primesc ca argument pointerul this, la fel ca şifuncţiile nestatice. Va trebui ca funcţiei statice să-i transmitem explicit un pointer spreobiectul curent:class punct_plan{int coordy;public:...static void inccoordy(punct_plan* ptr);void inccoordx();};Modificările în fişierul sursă vor fi:#inclu<strong>de</strong> ...void punct_plan::inccoordy(punct_plan* ptr){ptr->coordy++;cout

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

Saved successfully!

Ooh no, something went wrong!