Ahoj mám dotaz chci se naučit C++ už programuji Arduino což je podobné ,ale tak sem se nějak chtěl dozvědět o C++ .V knize výpis kapitoly 6.9. Zde se jedná o Bod ZiskejHorniLevy()const {return hodnotaHorniLevy;} tohle vytvoří jako objekt nechápu co tím chtěl basník řící a jakto ,že můžu napsat MujObdelnik.ZiskejHorniLevy().ZiskejX();??? Má to něco společného s void NastavHorniLevy(Bod Umisteni) {hodnotaHorniLevy = Umisteni;} myslím hlavně ten zápis vytvářím něcím když napíšu Bod funkce něco nového.Nemohli by jste to nějak popsat v knize tenhle popis dost odbyli....
//zacatek Obdelnik.hpp
#include <iostream>
// udrzuje souradnice x a y jednoho bodu
class Bod
{
// no construktor
public:
void NastavX(int x){ hodnotaX = x; }
void NastavY(int y){ hodnotaY = y; }
int ZiskejX()const { return hodnotaX;}
int ZiskejY()const { return hodnotaY;}
private:
int hodnotaX;
int hodnotaY;
};
class Obdelnik
{
public:
Obdelnik(int horni,int levy,int spodni,int pravy);
~Obdelnik(){}
int ZiskejHorni()const { return hodnotaHorni;}
int ZiskejLevy()const { return hodnotaLevy;}
int ZiskejSpodni()const { return hodnotaSpodni;}
int ZiskejPravy()const { return hodnotaPravy;}
Bod ZiskejHorniLevy()const {return hodnotaHorniLevy;}
Bod ZiskejSpodniLevy()const {return hodnotaSpodniLevy;}
Bod ZiskejHorniPravy()const {return hodnotaHorniPravy;}
Bod ZiskejSpodniPravy()const {return hodnotaSpodniPravy;}
void NastavHorniLevy(Bod Umisteni) {hodnotaHorniLevy = Umisteni;}
void NastavSpodniLevy(Bod Umisteni) { hodnotaSpodniLevy = Umisteni;}
void NastavHorniPravy(Bod Umisteni) {hodnotaHorniPravy = Umisteni;}
void NastavSpodniPravy(Bod Umisteni) { hodnotaSpodniPravy = Umisteni;}
int ZiskejPlochu() const;
private:
Bod hodnotaHorniLevy;
Bod hodnotaSpodniLevy;
Bod hodnotaHorniPravy;
Bod hodnotaSpodniPravy;
int hodnotaHorni;
int hodnotaLevy;
int hodnotaSpodni;
int hodnotaPravy;
};
//konec Obdelnik.hpp
//zacatek Obdelnik.cpp
//#include "Obdelnik.hpp"
Obdelnik::Obdelnik(int horni,int levy,int spodni,int pravy)
{
hodnotaHorni = horni;
hodnotaLevy = levy;
hodnotaSpodni = spodni;
hodnotaPravy = pravy;
hodnotaHorniLevy.NastavX(levy);
hodnotaHorniLevy.NastavY(horni);
hodnotaHorniPravy.NastavX(pravy);
hodnotaHorniPravy.NastavY(horni);
hodnotaSpodniLevy.NastavX(levy);
hodnotaSpodniLevy.NastavY(spodni);
hodnotaSpodniPravy.NastavX(pravy);
hodnotaSpodniPravy.NastavY(spodni);
}
int Obdelnik::ZiskejPlochu()const
{
int Sirka = hodnotaPravy - hodnotaLevy;
int Vyska = hodnotaHorni - hodnotaSpodni;
return (Sirka * Vyska);
}
int main()
{
Obdelnik MujObdelnik(100,20,50,40);
int Plocha = MujObdelnik.ZiskejPlochu();
std::cout << "\n Plocha: " << Plocha <<"\n";
std::cout << "\nSouradnice X horniho leveho Bodu je: " << MujObdelnik.ZiskejHorniLevy().ZiskejX();
return 0;
}