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

Chyba pada program – C / C++ – Fórum – Programujte.comChyba pada program – C / C++ – Fórum – Programujte.com

 

Jan
~ Anonymní uživatel
187 příspěvků
18. 11. 2014   #1
-
0
-

Dobrý den,

mám problém potřebuji uložit hodnotu z pole a nevím jak na to zkusil jsme to takto ale program padá.Jedná se o metodu pouzijPredmet. Potřebuji aby ze všech předmětů, které budou v poli předměty se mohl vybrat max jeden mec, stit a helmu do coMaNaSobe.   

 enum TypPredmetu {
        Mec=0,
        Stit=1,
        Helma=2
    };

class Predmety {

   int m_bonusObrana;
    string m_nazev;
    int m_typ;



public:
    Predmety (int obrana, string nazev, int typ){
        m_bonusObrana=obrana;
        m_nazev=nazev;
        m_typ=typ;

        }
    int getBonusObrana(){
        return m_bonusObrana;
    }

    string getNazev(){
        return m_nazev;
    }
class Hrdina{
private:
    array <Predmety*,10> m_predmety;
   int m_penize;
   int m_obrana;
   Predmety** m_comaNaSobe;



public:

   Hrdina(int penize, int obrana){
        m_penize = penize;
        m_obrana = obrana;
        for(int i = 0; i<(int)m_predmety.size(); i++){
           m_predmety.at(i)=0;

   }
 }
   int getPenize(){
   return m_penize;
      }
   int getObrana(){
    return m_obrana;
   }


    int i=0;

    void seberPredmet(Predmety*stit){
        m_predmety.at(i)=stit;
        i=i+1;

    }


        void pouzijPredmet(int ktery){

        m_comaNaSobe[TypPredmetu::Stit] = m_predmety.at(ktery);
        m_obrana=m_obrana+m_comaNaSobe[TypPredmetu::Stit]->getBonusObrana();

    }
    
    void printInfo(){
    cout<<"Pocet zlataku: "<<m_penize<<endl;
    


    }

~ Hrdina (){

Nahlásit jako SPAM
IP: 91.219.240.–
vitamin+8
Grafoman
19. 11. 2014   #2
-
0
-

Skus spravne odsadzovat bloky a hned najdes niektore chyby:


enum TypPredmetu {
    Mec=0,
    Stit=1,
    Helma=2
};

class Predmety {
    
    int m_bonusObrana;
    string m_nazev;
    int m_typ;
    
    
    
    public:
    Predmety (int obrana, string nazev, int typ){
        m_bonusObrana=obrana;
        m_nazev=nazev;
        m_typ=typ;
        
    }
    int getBonusObrana(){
        return m_bonusObrana;
    }
    
    string getNazev(){
        return m_nazev;
    }
    class Hrdina{
        private:
        array <Predmety*,10> m_predmety;
        int m_penize;
        int m_obrana;
        Predmety** m_comaNaSobe;
        
        
        
        public:
        
        Hrdina(int penize, int obrana){
            m_penize = penize;
            m_obrana = obrana;
            for(int i = 0; i<(int)m_predmety.size(); i++){
                m_predmety.at(i)=0;
                
            }
        }
        int getPenize(){
            return m_penize;
        }
        int getObrana(){
            return m_obrana;
        }
        
        
        int i=0;
        
        void seberPredmet(Predmety*stit){
            m_predmety.at(i)=stit;
            i=i+1;
            
        }
        
        
        void pouzijPredmet(int ktery){
            
            m_comaNaSobe[TypPredmetu::Stit] = m_predmety.at(ktery);
            m_obrana=m_obrana+m_comaNaSobe[TypPredmetu::Stit]->getBonusObrana();
            
        }
        
        void printInfo(){
            cout<<"Pocet zlataku: "<<m_penize<<endl;
            
            
            
        }
        
        ~ Hrdina (){
Nahlásit jako SPAM
IP: 195.28.77.–
obfuscate: "The cruel god Malloc will strike you down. "
ZMeson: "That's the C god. C++ has a new god. "
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, 36 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ý