• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Rozbijanie klas na mniejsze czesci.

Object Storage Arubacloud
0 głosów
243 wizyt
pytanie zadane 14 lipca 2016 w C i C++ przez DragonCoder Nałogowiec (36,500 p.)

Witam, czy takie rozbicie jest poprawne. Muszę użyć rekurencji a reszta w setterach i getterach.

    class Hero
    {
    public:
    int strenght_hero;
	int stamin_hero;
	int sleight_hero;
	
	void set_reszta()
	{
	int intelligence_hero;
	int state_money_beginn;
	int deffence_hero;
	int life_hero;
	int minimal_damage_hero;
	int maximal_damge_hero;
	int damage_hero;
	int hero_lenght;
	int hero_width;
	int lvl_hero;
	int exp_hero;
	int point_for_statystick;
	string klasa_hero;
	}
	void get_reszta()
	{
	   int intelligence_hero;
	int state_money_beginn;
	int deffence_hero;
	int life_hero;
	int minimal_damage_hero;
	int maximal_damge_hero;
	int damage_hero;
	int hero_lenght;
	int hero_width;
	int lvl_hero;
	int exp_hero;
	int point_for_statystick;
	string klasa_hero; 
	}
    Hero(int strenght,int stamin,int sleight,int intelligence,int money,int lenght,int width,int lvl,int exp,int point,string klasa);
    void hero_attributs_description();
	};

 

1 odpowiedź

+1 głos
odpowiedź 14 lipca 2016 przez MetRiko Nałogowiec (37,110 p.)
wybrane 14 lipca 2016 przez DragonCoder
 
Najlepsza

Tak się zastanawiam.. czy ty zdajesz sobie sprawę z tego co napisałeś (mówię o kodzie).
Z twojego zapisu wynika, że po wywołaniu funkcji set_reszta (tak samo jak get_reszta) stworzysz mnóstwo zmiennych tymczasowych, które po zakończeniu działania funkcji nie będą już istnieć. Zmienne dla klasy muszą się znajdować w klasie, a nie w jakiejś funkcji.
Jeżeli chcesz sobie porozdzielać kod na mniejsze części to zrób po prostu do tego osobne struktury (możesz je umieścić oczywiście w klasie Hero, ale nie wolno zapomnieć o stworzeniu obiektów/struktur).
Przykładowo:

class Hero
{
public:
   struct Type_A
   {
      int var_1, var_2, var_3;
   }
   struct Type_B
   {
      int var_1, var_2, var_3;
   }

   Type_A Armor;
   Type_B Dmg;
   void Set_Hero()
   {
      Armor.var_1=10;
      Armor.var_2=20;
      Dmg.var_2=4;
      Dmg.var_3=123;
   }
};

 

komentarz 14 lipca 2016 przez DragonCoder Nałogowiec (36,500 p.)
Dziękuje o coś takiego mi chodziło.

Podobne pytania

0 głosów
2 odpowiedzi 305 wizyt
pytanie zadane 5 sierpnia 2016 w C i C++ przez DragonCoder Nałogowiec (36,500 p.)
0 głosów
0 odpowiedzi 313 wizyt
pytanie zadane 12 marca 2022 w C i C++ przez Billy Użytkownik (680 p.)
0 głosów
3 odpowiedzi 367 wizyt

92,567 zapytań

141,420 odpowiedzi

319,616 komentarzy

61,953 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...