Mivel másabb az első programrész mint a második? Miért jobb miért rosszabb? Hiszen a végeredmény ugyanaz, vagy nem?
Figyelt kérdés
1. program rész
class Barbar : Karakter
{
public Barbar()
{
base.azonosito = "Barbár";
base.ero = 12;
base.vedelem = 5;
base.gyorsasag = 4;
2. programrész
class Lovag : Karakter
{
public static void jell_Lovag(Lovag lovag)
{
lovag.ero = 10;
lovag.vedelem = 4;
lovag.gyorsasag = 5;
2012. jan. 15. 14:43
1/2 _Jessy_ válasza:
Mindkettő a Karakter osztályból származtatott osztály, de eltérő tulajdonságokkal, így nem mondanám, hogy a végeredmény ugyanaz. Még annyi különbség, hogy a Barbar-nál a példányosításkor állítódnak be az objektum tulajdonságai, a Lovag-nál pedig csak akkor, ha meghívod a jell_Lovag függvényt paraméterként átadva neki az objektumot.
2/2 iostream válasza:
Az első egy Barbar típusú ojjektum létrehozásakor beállítja az értékeket, a második pedig a jell_Lovag meghívásakor az átadott lovagnak állítja be azokat. Gondolom nem ez a kérdés, mert itt nincs jobb vagy rosszabb, mindkettőnek van értelme.
A kérdés gondolom arra vonatkozik, hogy a base-n vagy az aktuális osztályon keresztül érdemes-e beállítani.
Igazából mindegy. Akkor lenne érdekes, ha lenne egy ugyan olyan nevű tagváltozó az alosztályban is.
Kapcsolódó kérdések:
Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!