Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

Widocznosc zmiennej utworzonej dynamicznie

Ostatnio zmodyfikowano 2020-04-28 20:03
Autor Wiadomość
ziomek_680
Temat założony przez niniejszego użytkownika
Widocznosc zmiennej utworzonej dynamicznie
» 2020-04-28 19:42:55
C/C++
#include <SFML/Graphics.hpp>
#include <iostream>

class gracz
{
public:
};

class plansza
{
public:
    std::vector < std::vector < int > > bloki;
    plansza( int lvl_number )
    {
        //Wczytanie danego poziomu
    }
    void wyswietl()
    {
        //Tu metoda renderujaca plansze
    }
};
int main()
{
    int lvl = 1;
    sf::RenderWindow oknoAplikacji( sf::VideoMode( 800, 600, 32 ), "Okno" );
    int ekran = 1;
    // 0 - gra
    // 1 - glowne menu
    while( oknoAplikacji.isOpen() )
    {
        if( ekran == 1 )
        {
            ekran = 0; //Chwilowe rozwiazanie, potem bedzie tu obsluga menu
            plansza * game = new plansza( lvl ); //Tworzenie dynamicznego obiektu
            //Tu obiekt jest widoczny
        } else if( ekran == 0 )
        {
            sf::Event zdarzenie;
            while( oknoAplikacji.pollEvent( zdarzenie ) )
            {
                if( zdarzenie.type == sf::Event::Closed )
                     oknoAplikacji.close();
               
                if( zdarzenie.type == sf::Event::KeyPressed && zdarzenie.key.code == sf::Keyboard::Escape )
                     oknoAplikacji.close();
               
            }
            game->wyswietl(); //Blad - obiekt nie jest tu widoczny
            oknoAplikacji.display();
        }
    }
    return 0;
}

W warunku z ekran == 1 chce w okreslonym momencie utworzyc obiekt dynamicznie, ale ten obiekt jest widoczny tylko w tym warunku.
Czy istnieje mozliwosc "zobaczenia" go poza tym warunkiem bez zmiennych globalnych i tworzac go dynamicznie(musze go potem usunac i stworzyc od nowa gdy znowu bedzie potrzebny)?
P-176731
pekfos
» 2020-04-28 20:03:18
Zasięg i nazwę ma tu wskaźnik, nie wskazywany obiekt. Utwórz wskaźnik w takim miejscu, by był widoczny wszędzie, gdzie potrzeba, a wskazywany obiekt utwórz dynamicznie wtedy, kiedy uznasz za stosowne.
P-176732
« 1 »
  Strona 1 z 1