CATEGORII DOCUMENTE |
Tipurile abstracte de date realizeaza o legatura mai strinsa intre datele problemei si operatiile (functiile) care se refera la aceste date. Declararea unui tip abstract de date este asemanatoarea cu declararea unei structuri, care in afara de date mai cuprinde si declararea sau definira functiilor referitoare la acestea.
De exemplu in cazul vectorilor cu elemente numere intregi putem declara tipul abstract:
struct vect
void lapatrat();
void afiseaza();
};
Functiile declarate sau definite in interiorul structurii vor fi numite functii membru iar datele date membru. Daca o functie membru este definita in interiorul structurii (ca si functia distr din exemplul de mai sus), atunci ea se considera functie inline. Daca o functie membru se defineste in afara structurii, atunci numele functiei se va inlocui cu numele tipului abstract urmat de operatorul de rezolutie (::) si numele functiei membru. Astfel functiile init, lapatrat si afiseaza vor fi definite in modul urmator:
void vect::init(int *e1, int d1)
void vect::lapatrat()
void vect::afiseaza()
Desi prin metoda de mai sus s-a realizat o legatura intre datele problemei si functiile referitoare la aceste date, structurile ca tipuri abstracte de date nu ne permit protejarea datelor, deci ele pot fi accesate de orice functie utilizator, nu numai de functiile membru. Acest neajuns se poate inlatura cu ajutorul claselor.
Politica de confidentialitate | Termeni si conditii de utilizare |
Vizualizari: 943
Importanta:
Termeni si conditii de utilizare | Contact
© SCRIGROUP 2024 . All rights reserved