Unica.ro - asa cum esti tu

  • REFERATE
  • ARTICOLE
  • CARTI
  • STIRI
  • ACTE
  • BACALAUREAT
  • MEMBRI
  • HOROSCOP
  • REVISTA UNICA
  • RETETE
  • UNICA TV
  • FOTO
  • INTRE PRIETENE
  • DIN DRAGOSTE
  • TESTE
  • PAREREA LUI
  • FELICITARI
  • CONCURSURI
  • ARHIVA
  • SHOP
  • Referate
    • Agricultura
    • Alimentatie publica
    • Alte teme
    • Asistenta sociala
    • Astrologie
    • Astronomie
    • BAC / Capacitate
    • Biografii
    • Biologie
    • Chimie
    • Confectii
    • Contabilitate
    • Desen / Arte
    • Domeniul - Militar
    • Drept
    • Ecologie
    • Economie
    • Engleza
    • Esee
    • Facultate
    • Filozofie
    • Fizica
    • Franceza
    • Geo. Economica
    • Geografie
    • Germana
    • Informatica
    • Istorie
    • Jurnalism
    • Lucrari
    • Management
    • Marketing
    • Mass-Media
    • Matematica
    • Mecanica Auto
    • Medicina
    • Muzica
    • Opere / Povesti
    • Pedagogie
    • Psihologie
    • Religie
    • Romana
    • Sexologie
    • Stiinte politice
    • Tehnologie
    • Turism

INITIERE IN PROGRAMAREA ORIENTATA PE OBIECTE

Descriere referat

  • Referate informatica
  • Recomanda unui prieten
  • Trimite prin YM

Varianta 1
int x,y,z;
void translat (int tx, int ty, int tz)
{ x+=tx;
y+=ty;
z+=tz;
}
Varianta 2 - Structuri
struct coord_3D
{ int x,y,z;
};
void translat (struct coord_3D *punct, int tx, int ty, int tz)
{ (*punct).x+=tx;
(*punct).y+=ty;
(*punct).z+=tz;
}
Varianta 3 - Clase
class coord_3D
{ private:
int x,y,z;
public:
void translat (int tx, int ty, int tz)
{
x+=tx;
y+=ty;
z+=tz;
}
};


• privată - informaţii pentru implementarea clasei, invizibile utilizatorului clasei
• publică - interfaţa dintre clasă şi utilizator

Membrii clasei

(variabilele şi funcţiile declarate în interiorul clasei)
• privaţi - pot fi accesaţi doar de către funcţiile clasei
• publici - pot fi folosiţi oriunde în program


Prototipurile funcţiilor

În cadrul declaraţiei clasei pot apare numai prototipurile funcţiilor membre.
Exemplu:
class coord_3D // declararea clasei “coord_3D”
{ private:
int x,y,z; //declarare variabile membru
public:
void translat (int tx, int ty, int tz); //declarare funcţie membru
};
//definirea funcţiei membru
void coord_3D::translat (int tx, int ty, int tz)
{ x+=tx;
y+=ty;
z+=tz;
}

Declararea obiectelor

• Clasele sunt privite ca orice alt tip de date predefinit.

// Exemple de declaraţii
coordonate_3D p1, p2, p3; //declarare a 3 obiecte
coordonate_3D *ptr; //declarare pointer la obiect
coordonate_3D sir[20]; //declarare şir de 20 obiecte
coordonate_3D *formeaza (int, int, int);
coordonate_3D *aduna (coordonate_3D, coordonate_3D);
// Exemple de instrucţiuni
p1=p2;
ptr=sir; //ptr indică sir[0]
ptr=aduna(p2, p3);
ptr=formeaza (100, 200, 300);

Funcţii şi clase prietene

Funcţii friend - nu sunt membre ale clasei, dar au acces la membrii privaţi ai acesteia.
- funcţii independente
- funcţii membre ale altei clase
- operatori redefiniţi

Clase friend - toate funcţiile membre ale clasei sunt prietene cu cealaltă clasă


Funcţie friend independentă

class pozitie
{ int x,y; //coordonate
public:
pozitie (int abs, int ord); //constructor
~pozitie (); //destructor
void deplasare (int dx, int dy); //funcţie membru
friend int coincid (pozitie &, pozitie &); //funcţie prietenă
};
//definirea funcţiei independente
int coincid (pozitie &p1, pozitie &p2)
{ if (p1.x==p2.x && p1.y==p2.y) return 1
else return 0;
}

Funcţie friend membră a altei clase

class B; //declaraţie incompletă
class M
{ public:
int f2(B &, int);
};
class B //declaraţie completă
{ int a;
int f();
public:
friend int M::f2(B &, int); //functie prietena membra a clasei M
};
int M::f2 (B & rB, int j=0) // functie prietena membra a clasei M
{ if (rB.a>7) return j;


Accesarea membrilor unei clase

• Accesarea unei variabile din exteriorul clasei
NumeObiect.Variabilă
PointerObiect®Variabilă
• Accesarea unei funcţii din exteriorul clasei
NumeObiect.NumeFuncţie (listă parametri)
PointerObiect®NumeFuncţie (listă parametri)

În interiorul clasei, variabilele şi funcţiile membre pot fi accesate direct.

Exemplu de accesare a membrilor unei clase
class ex
{ int num;
public:
void init (int nr=0);
void aduna (ex&.Ob, ex *pOb);
};
void ex::init (int nr)
{ num=nr;
}
void ex::aduna (ex& Ob, ex *pOb)
{
num=num+Ob.num+pOb®num;
}
void main ()
{ exemplu ob1, ob2, ob3;
ob1.init ();
ob2.init (3);
ob3.init (4);
ob1.num=6; /* EROARE: ob1.aduna (ob2, &ob3)
}

inchide

Trimite email

Descarca referat

  • Adaugat de carticica_ta
  • 6 descarcari
  • 234 afisari

Referatul Initiere in programarea orientata pe obiecte - informatica pe care doriti sa-l downloadati nu este gratuit. Alegeti una din modalitatile de plata de mai sus pentru a primi codul pentru descarcarea referatului.

Va rugam sa introduceti o adresa de mail valida. Referatul cumparat va fi trimis si la adresa de mail pe care o veti spefica, descarcarea acestuia incepund in momentul in care dati click pe butonul 'descarca', dupa ce ati completat toate datele necesare.

In cazul in care apar erori de orice fel, sau daca doriti sa reclamati un material ca fiind plagiat ori de o calitate inacceptabila, ne puteti contacta oricand accesand pagina de Contact a site-ului.

Alte referate la informatica

  • Cauta
  • Adauga
  • Referate top 15
Nume referat
Info
Baze de Date
info
Microsoft Word
info
Pagini Web
info
Baza de date
info
3D.doc
info
  • TERMENI SI CONDITII
  • CONTACT