Zwalnianie pamięci dotyczącej danych obrazu

0

Witam :) Niedawno zacząłem się uczyć SFML 2.0 i w związku z tym mam pytanie - czy dane obrazu uzyskane poprzez wywołanie sf::Image.getPixelsPtr (http://www.sfml-dev.org/documentation/2.0/classsf_1_1Image.php#ac6137a608a9efaae2735c13ff259c214) należy zwolnić kiedy dane przestaną byc potrzebne? A jeśli tak, to w jaki sposób? Za pomocą delete []?

0

Z dokumentacji wynika, że tej pamięci nie zwalniasz. Nawet lepiej byłoby powiedzieć - nie możesz.

0

Nie musisz zwalniać po tym pamięci, bo byś sobie wtedy skasował dane o obrazie. Ta funkcja nie kopiuje pikseli do innego miejsca pamięci, do którego przekazuje wskaźnik tylko daje Ci wskaźnik bezpośrednio do miejsca gdzie gdzie obiekt klasy Image trzyma sobie dane o obrazie i sam z nich korzysta. I on to zwolni w swoim destruktorze.

0

Dzięki :) Jeszcze tylko jedno pytanie, czyli jeśli dana funkcja/metoda zwraca const, to znaczy że nie mogę tam zwolnić pamięci?

0

Jeśli metoda zwraca coś typu const to nie chciałaby by to coś było edytowane więc przypuszczam, że tym bardziej metoda byłaby niepocieszona gdyby to coś zostało skasowanie. :)
Pewno jakby pogłówkować to istniałby jakiś malutki procent przypadków kiedy coś takiego jest dozwolone, ale nie przychodzi mi do głowy.

0

OK, już wszystko wiem :) Dzięki :)

1 użytkowników online, w tym zalogowanych: 0, gości: 1