Notatki obiektowe1

Transkrypt

Notatki obiektowe1
Programowanie Obiektowe
Definiowanie klasy
Klasa definiowanie
Class NazwaKlasy
{private
//składniki prywatne widoczne
// w danej klasie
Public
}
// składniki publiczne
// widoczne na zewnątrz klasy
Przykład klasy
using namespace std;
class student
{
public:
string imie;
string nazwisko;
int album;
}
Klasa, która ma tylko pola statyczne.
Mogłaby być strukturą
struct student //deklaracja struktury
{ //opis struktury
std::string imie;
std::string nazwisko;
int::album;
};
Przykład klasy
class student
{
public:
string imie;
string nazwisko;
int album;
void zapamietaj( string nimie, string nnazwisko,int numer);
void wypisz()
{cout<<imie <<" "<<nazwisko <<" "<<"album:"<<album<<endl;
}
Klasa funkcje
• Funkcja składowa może zostać zdefiniowana zarówno
wewnątrz definicji klasy jak i na zewnątrz.
• Jeżeli funkcja jest definiowana na zewnątrz klasy to przy
jej definicji odwołujemy się do nazwy klasy
• Definicja wewnątrz klasy (funkcja typu inline)
• Definicja poza klasą (funkcja automatycznie nie jest
inline)
Sposoby odniesienia się do obiektu elementu klasy
• Za pomocą nawy klasy i operatora zakresu
• klasa::składnik
• Jeżeli istnieją egzemplarze obiektów klasy:
• Wskaźnik->składnik
• Jeżeli jest zdefiniowany taki wskaźnik do obiektów klasy
• Referencja.składnik
Wskaźnik this
taktujemy go tak jakby była tam stała dosłowna
określająca pokazywany adres w pamięci
this->wiek=lata
void student::zapamietaj(string imie, string nazwisko,int
album)
{ this->imie=imie;
this->nazwisko=nazwisko;
this->album=album;}