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

[SFML 2.0] Zwracanie tekstury przez funkcję

Ostatnio zmodyfikowano 2014-10-01 23:22
Autor Wiadomość
wino102
Temat założony przez niniejszego użytkownika
[SFML 2.0] Zwracanie tekstury przez funkcję
» 2014-10-01 23:17:08
Witam
Chcę przekazać teksturę przez funkcję, jednak po przekazaniu nie jest wyświetlana prawidłowo. W funkcji tekstura jest tworzona, rysowana i wyświetla się prawidłowo( sprawdzałem):

C/C++
const sf::Texture & Klsa::Funkcja()
{
    sf::RenderTexture renderTexture;
    if( !renderTexture.create( 500, 500 ) )
    {
        // error...
    }
    renderTexture.clear();
    renderTexture.display();
    renderTexture.draw( shape );
    return renderTexture.getTexture();
}

W renderTexture jest prawidłowa/sprawna tekstura, ponieważ w funkcji można ją prawidłowo wyświetlić.

C/C++
main()
{
    const sf::Texture & tekstura = klasa.funkcja();
}
I w main już mi wyświetlanie nie działa tzn. jest biały kwadrat 500/500.

Pewnie jakiś głupi błąd robię w przekazywaniu...
P-117842
akwes
» 2014-10-01 23:22:22
C/C++
sf::RenderTexture renderTexture;

oraz/lub

C/C++
return renderTexture.getTexture();

Odpowiedz sobie na trzy ważne pytania:

Jaki jest zakres życia tej zmiennej?
Kiedy wykona się destruktor tej zmiennej?
Dlaczego nie powinniśmy zwracać z funkcji referencji do zmiennej lokalnej?
P-117843
« 1 »
  Strona 1 z 1