Kde bych sehnal obsahlejsi referenci o OOP v jazyce C++. Prochazel jsem knizky C++ za 21 dni a Mistrostvi v C++ a nenasel jsem zatim jeste nejaky vetsi projekt, kde by se s OOP pracovalo. Potreboval bych nejakou osvedcenou stranku s kody, ktere obsahuji nejaky projekt, kde jsou veci popsane v clanku nebo aspon v komentarich, ale to docela zretelne.
Je jedno jestli AJ nebo CJ.
Mym cilem je pochopit plne OOP, dokazat cist a pochopit jine projekty, pracovat na svych projektech.
Ted zvladam v OOP akorat nejake vypisy pres void, kde funkce nemaji navratovou hodnotu.
Treba:
Kód: Vybrat vše
#include <cstdlib>
#include <iostream>
#include "Kocka.h"
using namespace std;
int main()
{
Kocka micka("Matous",7,"cerna");
Kocka micka2("Samik",8,"cerno-bila");
Kocka micka3("Sofina",1,"seda");
micka.pozdrav();
micka2.pozdrav();
micka3.pozdrav();
micka.behej();
micka2.behej();
micka3.behej();
system("PAUSE");
return 0;
}
Kód: Vybrat vše
#include "Kocka.h"
#include <conio.h>
#include <cstdlib>
#include <iostream>
using namespace std;
Kocka::Kocka(string jmeno,unsigned int vek,string barva_srsti)
{
//Nastavime spravne hodnoty ukazatelem this->
this->barva_srsti=barva_srsti;
this->jmeno=jmeno;
this->vek=vek;
}
Kocka::~Kocka()
{
}
void Kocka::pozdrav()
{
cout <<"Ahoj jmenuji se " << jmeno
<<" mam " << vek << " let a moje srst je " << barva_srsti << endl;
}
int Kocka::behej()
{
char volba='a';
int i=0;
cout << "Vitej kocko " << jmeno << endl;
cout << "Zacni behat stisknutim klavesy (w). Dokonci beh (q)." << endl;
while(volba!='q'){
volba = getch();
i++;
}
cout << "Ubehnuta vzdalenost: " << i << endl;
return i;
}
Kód: Vybrat vše
#ifndef KOCKA_H
#define KOCKA_H
//kvuli string, vyhnuti se std::
#include <iostream>
using namespace std;
//trida
class Kocka
{
public:
//konstruktor
Kocka(string jmeno,unsigned int vek,string barva_srsti);
//destruktor
~Kocka();
void pozdrav();
int behej();
//void poradi_behu(string jmeno);
string jmeno;
//chranena
protected:
//soukroma
private:
unsigned int vek;
string barva_srsti;
};
#endif // KOCKA_H
Neumim a jeste nechapu navratove hodnoty v OOP a pak propojenost tech hodnot funkci v jinych funkcich nebo v jinych funkcich od jine tridy (<-pokud to jde..)