Documente online.
Zona de administrare documente. Fisierele tale
Am uitat parola x Creaza cont nou
 HomeExploreaza
upload
Upload




Tip Abstract de Data

c


Tip Abstract de Data

Programarea modulara permite protejarea datelor prin memorie statica, (accesul la date se poate efectua doar din locul declararii pana la sfarsitul modulului, nu si in afara lui).



Un tip abstract de data (Domeniu, Operatii) contine o interfata ("Tad.h") si o implementare ("Tad.Cpp"). Programul ("Program.Cpp") care utilizeaza acest tip abstract de data va avea acces doar la modulul de interfata, asa cum se poate vedea in schema de mai jos:

In proiect (meniul Project) vor fi incluse fisierele Program.Cpp si Tad.Cpp.

In exemplul urmator, pentru Tad Multime, fisierele vor fi PMult.Cpp, Mult.h si Mult.Cpp:

PMult.Cpp

#include <conio.h>

#include <iostream.h>

#include 'Mult.h'

void main (void)

Mult.h

#include 'ElMult.h' // Sunt definite elementele multimii

struct Cet;

typedef Cet *Multime;

void Init (Multime &A);

int Card (Multime A);

int E_Vida (Multime A);

void Vida (Multime A);

void AdEl (TEl x, Multime A);

void CitM (Multime A);

void TipM (Multime A);

int Apart (TEl x, Multime A);

void Inters (Multime A, Multime B, Multime C);

void Dif    (Multime A, Multime B, Multime C);

void Reun (Multime A, Multime B, Multime C);

int Inclus (Multime A, Multime B);

int Egale (Multime A, Multime B);

Multime DifEl (Multime A, TEl a);

Multime Difer (Multime A, Multime B);

PMult.Cpp

#include <iostream.h>

#include <conio.h>

#include 'ElMult.h'

#include 'Mult.h'

typedef struct Cet ;

int Card (Multime A)

void CitM (Multime A)

void TipM (Multime A)

int Apart (TEl x, Multime A)

void Inters (Multime A, Multime B, Multime C)

void Dif (Multime A, Multime B, Multime C)

Multime DifEl (Multime A, TEl a)

else return A;

Multime Difer (Multime A, Multime B)

Multime Difer (Multime A, Multime B)

void Reun (Multime A, Multime B, Multime C)

int Inclus (Multime A, Multime B)

int Egale (Multime A, Multime B)

int Egale (Multime A, Multime B)

void AdEl(TEl x, Multime A)

else

A->Elem[++(A->card)]=x;

void Vida(Multime A)

void Init(Multime &A)

int E_Vida(Multime A)

ElMult.h

#define Cm 255

typedef int TEl; // Tipul elementelor multimii

Un tip abstract de data realizeaza o unificare (printr-o grupare de tip struct) intre date (date membru) si operatiile (functii membru) lor caracteristice. Functiile membru sunt considerate de tip inline iar definirea lor in afara structurii se face prin operatorul de rezolutie (::). In acest mod insa nu se realizeaza o protectie a datelor (accesul la date se poate face si prin alte functii, nu numai prin cele membru), aceasta protectie putand fi realizata (asa cum vom vedea in cele ce urmeaza) cu ajutorul claselor.

Exemplu:

#include <stdio.h>; #include <conio.h>; #include <iostream.h>;

#define Pi

struct Cerc

float Lung ();

float Aria ();

};

float Cerc::Lung ()

float Cerc::Aria ()

void main (void)



Document Info


Accesari: 734
Apreciat: hand-up

Comenteaza documentul:

Nu esti inregistrat
Trebuie sa fii utilizator inregistrat pentru a putea comenta


Creaza cont nou

A fost util?

Daca documentul a fost util si crezi ca merita
sa adaugi un link catre el la tine in site


in pagina web a site-ului tau.




eCoduri.com - coduri postale, contabile, CAEN sau bancare

Politica de confidentialitate | Termenii si conditii de utilizare




Copyright © Contact (SCRIGROUP Int. 2024 )