Laboratorium nr 4
Temat: Deklaracja danych oraz funkcji składowych klasy jako public oraz private. Tablice obiektów.
1) Deklaracja public oraz private
Dane i funkcje mogą być umieszczone w klasie na dwa sposoby – jako prywatne (private) i publiczne (public).
Prywatność oznacza, że żadna część programu nie może odwoływać się do takiego elementu poza obrębem
obiektu. W celu poprawy modularności programu, większość zmiennych w klasie powinna być prywatna.
# include <stdio.h>
# include <iostream.h>
# include <conio.h>
class baza {
private:
char imie[10];
char nazwisko[20];
int wiek;
public:
int wprowadz(char i[10], char n[20], int w);
int wyswietl();
};
int baza::wprowadz(char i[10], char n[20], int w){
strcpy(imie,i);
strcpy(nazwisko,n);
wiek=w;
return 0;
};
int baza::wyswietl() {
cout <<"Osoba:\n";
cout << imie << " " << nazwisko << " " << wiek << "\n";
return 0;
}
int main () {
class baza osoba;
osoba.wprowadz("Jas","Kowalski",18);
osoba.wyswietl();
getch();
return 0;
}
2) Tablice obiektów
Tablice obiektów deklarujemy na takiej samej zasadzie jak tablice dowolnych zmiennych.
# include <stdio.h>
# include <iostream.h>
# include <conio.h>
class baza {
private:
char imie[10];
char nazwisko[20];
int wiek;
public:
int wprowadz(char i[10], char n[20], int w);
int wyswietl();
};
int baza::wprowadz(char i[10], char n[20], int w){
strcpy(imie,i);
strcpy(nazwisko,n);
wiek=w;
return 0;
};
int baza::wyswietl() {
cout <<"Osoba:\n";
cout << imie << " " << nazwisko << " " << wiek << "\n";
return 0;
}
int main () {
class baza osoba[3];
osoba[0].wprowadz("Jas","Kowalski",18);
osoba[1].wprowadz("Krzys","Nowak",20);
osoba[2].wprowadz("Pawel","Wolny",25);
for(int i=0; i<3; i++)
osoba[i].wyswietl();
getch();
return 0;
}
3) Zadanie:
Opracuj program, który będzie obsługiwał prosta bazę danych (np. imię, nazwisko, wiek). Program powinien być
stworzony w oparciu o:
–
klasy
–
zmienne i funkcje prywatne oraz publiczne.
–
strumień danych cin oraz cout.
Uwaga: program powinien składać się z trzech plików, tj.:
–
pliku main.cpp zawierający funkcje main()
–
pliku klasa.cpp z definicją zmiennych i funkcji klasy
–
plik nagłówkowego klasa.h
np. układ plików dla programu z punktu 2:
main.cpp
# include <conio.h>
# include "klasa.h"
int main () {
class baza osoba[3];
osoba[0].wprowadz
("Jas","Kowalski",18);
osoba[1].wprowadz("Krzys","Nowak",20);
osoba[2].wprowadz("Pawel","Wolny",25);
for(int i=0; i<3; i++)
osoba[i].wyswietl();
getch();
return 0;
}
klasa.h
class baza {
private:
char imie[10];
char nazwisko[20];
int wiek;
public:
int wprowadz(char i[10], char n[20],
int w);
int wyswietl();
};
klasa.cpp
# include <stdio.h>
# include <iostream.h>
# include "klasa.h"
int baza::wprowadz(char i[10],
char n[20], int w){
strcpy(imie,i);
strcpy(nazwisko,n);
wiek=w;
return 0;
};
int baza::wyswietl() {
cout <<"Osoba:\n";
cout << imie << " " << nazwisko << " "
<< wiek << "\n";
return 0;
}
Uwaga: widok dla przykładowego projektu w środowisku Borlanad 5.0 i Dev C++
Borland 5.0
Dev C++
Program powinien posiadać krótkie menu wyboru, np.:
1. Wprowdz osobe
2. Kasuj osobe
3. Edytuj osobe
4. Wyświetl osobe
5. Zapisz dane na dysk
6. Wczytaj dane z dysku
7. itp.
8. Koniec