Forum www.imir15.fora.pl Strona Główna www.imir15.fora.pl
Forum grupy nr. 15
 
 FAQFAQ   SzukajSzukaj   UżytkownicyUżytkownicy   GrupyGrupy   GalerieGalerie   RejestracjaRejestracja 
 ProfilProfil   Zaloguj się, by sprawdzić wiadomościZaloguj się, by sprawdzić wiadomości   ZalogujZaloguj 

Egzamin wtorek Chmaj

 
Napisz nowy temat   Odpowiedz do tematu    Forum www.imir15.fora.pl Strona Główna -> Zadania i Inne / Techniki informatyczne
Zobacz poprzedni temat :: Zobacz następny temat  
Autor Wiadomość
Łukasz




Dołączył: 18 Paź 2010
Posty: 21
Przeczytał: 0 tematów

Ostrzeżeń: 0/10

PostWysłany: Wto 20:09, 21 Cze 2011    Temat postu: Egzamin wtorek Chmaj

Przydatne materiałki do poczytania
[link widoczny dla zalogowanych]


Post został pochwalony 0 razy
Powrót do góry
Zobacz profil autora
Zobacz poprzedni temat :: Zobacz następny temat  
Autor Wiadomość
testi




Dołączył: 06 Paź 2010
Posty: 32
Przeczytał: 0 tematów

Ostrzeżeń: 0/10

PostWysłany: Wto 20:37, 21 Cze 2011    Temat postu:

Haha dzięki przyda sie

Post został pochwalony 0 razy
Powrót do góry
Zobacz profil autora
Zobacz poprzedni temat :: Zobacz następny temat  
Autor Wiadomość
Łukasz




Dołączył: 18 Paź 2010
Posty: 21
Przeczytał: 0 tematów

Ostrzeżeń: 0/10

PostWysłany: Wto 22:26, 21 Cze 2011    Temat postu:

dobra teraz na poważnie



#include <cstdlib>
#include <iostream>

using namespace std;

class BaseClass // klasa bazowa
{
public: // blok publiczny klasy
BaseClass(int i){ x = i;} // konstruktor klasy bazowej przyjmujacy argument int i
int x;
virtual void PrintVariable(); // deklaracja funkcji wirtualnej, tzn poczatek polimorfizmu czyli inteligentych funkcji ktorych wersja zalezy
// od tego dla jakiego obiektu jest wywolywana dla tego obiektu funckja jesli jest zdefiniowana inna to sie ona wywoluje odpowiednio inna
void Run() // metoda prezentujaca klase
{
cout << " jestem w klasie bazowej w metodzie Run:" << endl;
PrintVariable(); // wywolanie w klasie bazowej funkcji print variable (wirtualnej)
cout << " wychodze z klasy bazowej z metody Run:" << endl;
}

};
class FirstInheritClass : public BaseClass // klasa FirstInheritClass dziedziczy publicznie po klasie BaseClass tzn elementy z klasy base są dostępne
// w klasie firstinheritclass jako publiczne (nie trzeba ich deklarowac) np int x jest dostepny w tej klasie,
// np funkcja PrintVariable tez jest dostepna i funkcja Run tez
{
public:
FirstInheritClass(int x) : BaseClass(x){} // konstruktor klasy FirstInheritClass ktory wywoluje konstruktor klasy BaseClass tam po " :
//wywoluje sie on na tzw liscie inicjalizacyjnej konstruktora
void PrintVariable(); // deklaracja funkcji PrintVariable ktora bedzie oddzielnie zdefiniowana (tzn jesli wywolasz te funkcje na rzecz obiektu
// FirstInheritClass to ona bedzie sie wywolywac a nie ta z klasy BaseClass
};

class SecondInheritClass : public BaseClass // koleina klasa dziedziczaca publicznie po klasie BaseClass
{
public:
SecondInheritClass(int x) : BaseClass(x){} // konstruktor klasy SecondInheritClass z wywolaniem konstruktora klasy bazowej BaseClass
// w tej klasie dostepny jest oczywiscie int x i funkcja PrintVariable jednak tutaj nie robisz jakiejs specjalnej wersji tej funcki
// tzn gdy wywolasz ja na rzecz obiektu SecondInheritClass wywola sie funcja z klasy BaseClass z linijki 11 ( nie myl z linia 2Cool
};


void BaseClass::PrintVariable() // definicja funkcji PrintVariable w klasie bazowej BaseClass poznajesz po "::" przed nazwa funkcji:)
{
cout << "jestem w metodzie PrintVariable klasy BaseClass" << endl;
cout << " x = "<< x << endl;
cout << "wychodze z metody PrintVariable klasy BaseClass" << endl;

}

void FirstInheritClass::PrintVariable() // odmienna definicja funkcji dla klasy FirstInheritClass zobacz przed "::" to jest skad pochodzi funkcja Smile
// czyli pochodzi z klasy FirstInheritClass
{
cout << "jestem w metodzie PrintVariable klasy FirstInheritClass" << endl;
cout << " x + x = "<< x + x << endl;
cout << "wychodze z metody PrintVariable klasy FirstInheritClass" <<endl>Run(); // uruchomienie metody z klasy Base
base = &instanceFirst; //przypisanie adresu (referencji) od klasy pochodnej FirstInheritClass tutaj mozna tak zrobic bo klasa FirstInheritClass jest dzieckiem
// klasy BaseClass dlatego wskaznik od base moze pokazywac na obiekt typu FirstInheritClass
base->Run(); // uruchomienie metody z klasy Base chociaz wskaznik base pokazuje na obiekt typu FirstInheritClass jednak ten jest "dzieckiem"
// czyli dziedziczy metode Run z klasy Base
base = &instanceSecond; // przypisanie trzeciego elementu dziedziczacego z klasy SecondInheritClass
base->Run(); // tutaj rowniez uruchamia sie metoda Run z klasy base poniewaz klasa SecondInheritClass nie definiuje swojej osobnej
// tylko ma ta co odziedziczyla po klasie Base


/*BaseClass instance = BaseClass(10);
FirstInheritClass instanceFirst = FirstInheritClass(15);
SecondInheritClass instanceSecond = SecondInheritClass(20);
/*cout << endl << "wiazania statyczne" <<endl>Run();
base = &instanceFirst;
base->Run();
base = &instanceSecond;
base->Run(); */

system("PAUSE");
return EXIT_SUCCESS;
}


Post został pochwalony 0 razy
Powrót do góry
Zobacz profil autora
Zobacz poprzedni temat :: Zobacz następny temat  
Autor Wiadomość
mona




Dołączył: 06 Paź 2010
Posty: 67
Przeczytał: 0 tematów

Ostrzeżeń: 0/10

PostWysłany: Sob 21:32, 25 Cze 2011    Temat postu:

what the fuck is this:P

Post został pochwalony 0 razy
Powrót do góry
Zobacz profil autora
Zobacz poprzedni temat :: Zobacz następny temat  
Autor Wiadomość
Kacza
Administrator



Dołączył: 29 Wrz 2010
Posty: 103
Przeczytał: 0 tematów

Pomógł: 4 razy
Ostrzeżeń: 0/10
Skąd: Przemyśl/Kraków

PostWysłany: Sob 22:08, 25 Cze 2011    Temat postu:

A żeby ktoś z nas wiedział co to jest ...

Post został pochwalony 0 razy
Powrót do góry
Zobacz profil autora
Wyświetl posty z ostatnich:   
Napisz nowy temat   Odpowiedz do tematu    Forum www.imir15.fora.pl Strona Główna -> Zadania i Inne / Techniki informatyczne Wszystkie czasy w strefie EET (Europa)
Strona 1 z 1

 
Skocz do:  
Nie możesz pisać nowych tematów
Nie możesz odpowiadać w tematach
Nie możesz zmieniać swoich postów
Nie możesz usuwać swoich postów
Nie możesz głosować w ankietach

fora.pl - załóż własne forum dyskusyjne za darmo
Powered by phpBB © 2001, 2005 phpBB Group
Regulamin