Přístupové Metody – C / C++ – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

Přístupové Metody – C / C++ – Fórum – Programujte.comPřístupové Metody – C / C++ – Fórum – Programujte.com

 

2. 10. 2006   #1
-
0
-

M?m jenom takovou malou p?opom?nku... V kurzu C++ se u?? norm?ln? struct a v?echno vevnit? public. Ale j? mam knihu Mau?te se C++ za 21 dn? a tam se p??e ?e podle standardu ANTSI by se m?ly norm?ln? prom?n? d?lat private a do public se d?vaj? p??stupov? metody tzn. n?co jako nastavit prom?nou a ziskat prom?nou... Pro uk?zku sem d?m jenom uk?zkov? k?d:



#include <iostream>
using namespace std;
typedef unsigned short int ushort;
enum menu { Zokna = 1, Zdvere, Zstrechu, Informace, Zbourat };
ushort Menu();

class Dum //Trida Dum
{
public:
Dum(ushort kOkna, ushort kDvere, ushort ktypStrechy); //konstruktor
~Dum() {} //destruktor, nic

void NastavOkna();
ushort ZiskejOkna() const { return Okna; }
void NastavDvere();
ushort ZiskejDvere() const { return Dvere; }
void NastavTypStrechy();
ushort ZiskejTypStrechy() const { return TypStrechy; }
inline ushort Zbourat() { return 0; }

private:
ushort Okna;
ushort Dvere;
ushort TypStrechy;
};
Dum::Dum(ushort kOkna, ushort kDvere, ushort ktypStrechy)
{
Okna = kOkna;
Dvere = kDvere;
TypStrechy = ktypStrechy;
}
void Dum::NastavOkna()
{
ushort Vyber;
cout << "Kolik oken: ";
cin >> Vyber;
Okna = Vyber;
}
void Dum::NastavDvere()
{
ushort Vyber;
cout << "Kolik dveri: ";
cin >> Vyber;
Dvere = Vyber;
}
void Dum::NastavTypStrechy()
{
ushort Vyber;
cout << "Jaky typ strechy: ";
cin >> Vyber;
TypStrechy = Vyber;
}
int main() //main
{
Dum mujDum( 7, 6, 2);
cout << "nnn******************** Vitam vas v programu Dum **********************************";
ushort Vyber = Zokna;
bool konec = false;
while (!konec)
{
Vyber = Menu();
if(Vyber < Zokna || Vyber > Zbourat)
{
cout << "nSpatna volba.";
konec = true;
}
switch(Vyber)
{
case Zokna:
mujDum.NastavOkna();
break;
case Zdvere:
mujDum.NastavDvere();
break;
case Zstrechu:
mujDum.NastavTypStrechy();
break;
case Informace:
cout << "nPocet oken: " << mujDum.ZiskejOkna();
cout << "nPocet dveri: " << mujDum.ZiskejDvere();
cout << "nTyp strechy: " << mujDum.ZiskejTypStrechy();
break;
case Zbourat:
konec = true;
break;
default:
konec = true;
break;
}
}
cin.get();
cin.get();
return 0;
}
ushort Menu()
{
ushort Zadano;
menu vyber;
cout << "nn1:Zmenit pocet oken";
cout << "n2:Zmenit pocet dveri";
cout << "n3:Zmenit typ strechy";
cout << "n4:Informace";
cout << "n5:Zbouratn";
cin >> Zadano;
return Zadano;
}



Ten smajl?k se tam ud?lal proto?e tam bylo : D(bez mezery) :D

Nahlásit jako SPAM
IP: ...–
char zz = 167; cout << "Jak jde " << zz << "ivot?\n";
Jura_0
Stálý člen
2. 10. 2006   #2
-
0
-

Jen takova drobnost: Standard se nejmenuje ANTSI, ale pouze ANSI.

Nahlásit jako SPAM
IP: ...–
NAItReIN0
Newbie
2. 10. 2006   #3
-
0
-

Tak teraz neviem, preto?e v Tvoj?ch vet?ch sa dos? prel?naj? my?lienky, ale spom?na? o struct, ?o je ?trukt?ra, ako v jazyku C tak v jazyku C++. Ale z?sadn? rozdiel medzi ?trukt?rou a triedou je to, ?e druh? menovan? pr?stupov? metody a funckie ma? mo?e, ale ?trukt?ra nie!

Nahlásit jako SPAM
IP: ...–
- drEAMs. What are they? -
Jura_0
Stálý člen
2. 10. 2006   #4
-
0
-

NAItReIN napsal:

Tak teraz neviem, preto?e v Tvoj?ch vet?ch sa dos? prel?naj? my?lienky, ale spom?na? o struct, ?o je ?trukt?ra, ako v jazyku C tak v jazyku C++. Ale z?sadn? rozdiel medzi ?trukt?rou a triedou je to, ?e druh? menovan? pr?stupov? metody a funckie ma? mo?e, ale ?trukt?ra nie!


To neni tak docela pravda. Protoze struct v C++ a struct v C jsou uplne rozdilne datove typy. Ted se budu opakovat, ale v cistem C slouzi struktury pouze k zabaleni promennych a nelze u nich vytvaret clenske metody, naproti tomu v C++ se struct chova jako trida, jen jeji polozky, vcetne funkci, jsou implicitne verejne, kdezto ve tride jsou implicitne soukrome a u obou funguje dedicnost, polymorfismu, atd.. Tecka.

Nahlásit jako SPAM
IP: ...–
3. 10. 2006   #5
-
0
-

Jura_ napsal:

Jen takova drobnost: Standard se nejmenuje ANTSI, ale pouze ANSI.



Jo to máš pravdu.. jsem se spletl

Nahlásit jako SPAM
IP: ...–
char zz = 167; cout << "Jak jde " << zz << "ivot?\n";
Zjistit počet nových příspěvků

Přidej příspěvek

Toto téma je starší jak čtvrt roku – přidej svůj příspěvek jen tehdy, máš-li k tématu opravdu co říct!

Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku

×Vložení zdrojáku

×Vložení obrázku

Vložit URL obrázku Vybrat obrázek na disku
Vlož URL adresu obrázku:
Klikni a vyber obrázek z počítače:

×Vložení videa

Aktuálně jsou podporována videa ze serverů YouTube, Vimeo a Dailymotion.
×
 
Podporujeme Gravatara.
Zadej URL adresu Avatara (40 x 40 px) nebo emailovou adresu pro použití Gravatara.
Email nikam neukládáme, po získání Gravatara je zahozen.
-
Pravidla pro psaní příspěvků, používej diakritiku. ENTER pro nový odstavec, SHIFT + ENTER pro nový řádek.
Sledovat nové příspěvky (pouze pro přihlášené)
Sleduj vlákno a v případě přidání nového příspěvku o tom budeš vědět mezi prvními.
Reaguješ na příspěvek:

Uživatelé prohlížející si toto vlákno

Uživatelé on-line: 0 registrovaných, 92 hostů

Moderátoři diskuze

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032024 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý