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

question-closed Tworzenie obiektów w switchu

Aruba Cloud VPS - 50% taniej przez 3 miesiące!
0 głosów
808 wizyt
pytanie zadane 19 marca 2017 w C i C++ przez akiihombre Początkujący (250 p.)
zamknięte 19 marca 2017 przez akiihombre

Witam!


Podejmując się próby napisania gry tekstowej w C++ napotkałem na problem - nie mogę utworzyć obiektu w switchu. Mimo usilnych prób nie potrafię naprawić problemu i nie mam pojęcia gdzie jest błąd. Dodam, że wszystko działa, gdy utworzę klasę poza switchem.

A taki error wyskakuje: "error: 'player' was not declared in this scope".

           

switch (klasa1)
                {
  case 1:
     {
      Mag gracz("Mag");
      cout << "Wybrales Maga! Twoja przygoda sie rozpoczyna.Powodzenia!";
             break;
                        }

case 2:
   {
      Lucznik gracz("Lucznik");
      cout << "Wybrales Lucznika! Twoja przygoda sie rozpoczyna.Powodzenia!";
             break;
                        }

case 3:
 {
      Tank gracz("Tank");
      cout << "Wybrales Tanka! Twoja przygoda sie rozpoczyna. Powodzenia!";
          break;
                        }

case 4:
 {
      Dps gracz("Wojownik");
      cout << "Wybrales Wojownika! Twoja przygoda sie rozpoczyna. Powodzenia!";
          break;
                        }
                    }
                }


    Sleep(3000);

    cout << "KROTKIE PRZYGOTOWANIE"<< endl << endl;
    cout << "Pierwsza linijka to zawsze statystyki."<< endl;


    player.staty();

 

 

 

 

komentarz zamknięcia: Otrzymałem odpowiedz na pytanie.

3 odpowiedzi

+1 głos
odpowiedź 19 marca 2017 przez Adam Olesiak Gaduła (3,290 p.)
wybrane 19 marca 2017 przez akiihombre
 
Najlepsza
Deklarujesz te nowe obiekty lokalnie dla tego switcha. Zaraz po wyjściu ze switcha zostają usuniętę(tak samo jak np int i po zakończeniu pętli for). W twoim przypadku fajny byłby wskaźnik polimorficzny. Wtedy wystarczy zadeklarować jakiś ogólny obiekt Postac przed switchem i w switchu ustawić wskaźnik na Maga/Tanka itd
+1 głos
odpowiedź 19 marca 2017 przez mokrowski Mędrzec (156,420 p.)

Niepotrzebnie wstawiłeś tam nawiasy. To Ci tworzy zakresy a (jak powiedział kompilator) po wyjściu z zakresu obiekt tworzony na stosie jest niszczony. 

switch(klasa1) {
case 1: 
        Mag gracz("Mag");
        cout << "Wybrales Maga! Twoja przygoda sie rozpoczyna.Powodzenia!";
        break;
case 2: 
        Lucznik gracz("Lucznik");
        cout << "Wybrales Lucznika! Twoja przygoda sie rozpoczyna.Powodzenia!";
        break;
case 3: 
        Tank gracz("Tank");
        cout << "Wybrales Tanka! Twoja przygoda sie rozpoczyna. Powodzenia!";
        break;
case 4: 
        Dps gracz("Wojownik");
        cout << "Wybrales Wojownika! Twoja przygoda sie rozpoczyna. Powodzenia!";
        break;
}


Sleep(3000);

cout << "KROTKIE PRZYGOTOWANIE" << endl << endl;
cout << "Pierwsza linijka to zawsze statystyki." << endl;


player.staty();

 

0 głosów
odpowiedź 19 marca 2017 przez akiihombre Początkujący (250 p.)
Dziękuje za odpowiedzi, udało mi się dzięki nim naprawić problem. ;)

Zamykam i zostawiam dla potomnych!

Podobne pytania

0 głosów
1 odpowiedź 556 wizyt
0 głosów
1 odpowiedź 1,772 wizyt
pytanie zadane 24 maja 2018 w C i C++ przez mIKY Nowicjusz (120 p.)
0 głosów
3 odpowiedzi 1,587 wizyt
pytanie zadane 17 maja 2018 w C i C++ przez giedymin33 Początkujący (290 p.)

93,180 zapytań

142,195 odpowiedzi

321,993 komentarzy

62,511 pasjonatów

Advent of Code 2024

Top 15 użytkowników

  1. 1873p. - dia-Chann
  2. 1848p. - Łukasz Piwowar
  3. 1831p. - CC PL
  4. 1827p. - Łukasz Eckert
  5. 1789p. - Tomasz Bielak
  6. 1769p. - Michal Drewniak
  7. 1761p. - Łukasz Siedlecki
  8. 1758p. - rucin93
  9. 1708p. - Adrian Wieprzkowicz
  10. 1668p. - Mikbac
  11. 1621p. - rafalszastok
  12. 1506p. - Marcin Putra
  13. 1356p. - ssynowiec
  14. 1289p. - Anonim 3619784
  15. 1232p. - Mariusz Fornal
Szczegóły i pełne wyniki

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

Wprowadzenie do ITsec, tom 1 Wprowadzenie do ITsec, tom 2

Można już zamawiać dwa tomy książek o ITsec pt. "Wprowadzenie do bezpieczeństwa IT" - mamy dla Was kod: pasja (użyjcie go w koszyku), dzięki któremu uzyskamy aż 15% zniżki! Dziękujemy ekipie Sekuraka za fajny rabat dla naszej Społeczności!

...