Czy chcesz zareagować na tę wiadomość? Zarejestruj się na forum za pomocą kilku kliknięć lub zaloguj się, aby kontynuować.

Nadpisanie zmiennej referencyjnej obiektu a usunięcie obiektu

2 posters

Go down

Nadpisanie zmiennej referencyjnej obiektu a usunięcie obiektu Empty Nadpisanie zmiennej referencyjnej obiektu a usunięcie obiektu

Pisanie by Pete_ Pon Lut 10, 2014 9:03 pm

Mam dość dręczące mnie pyt, mianowicie tworze obiekt swojej klasy:
Kod:
Snake  _point = new SnakePoint(_gridSize, GameField.RowDefinitions.Count, GameField.ColumnDefinitions.Count, true);
Po lewej "=" mamy zmienną referencyjną do obiektu, po prawej sam obiekt.

I później w metodzie do generowania punktu po zdobyciu go przez gracza generuje go w skrocie:
Kod:
_point = new SnakePoint(_gridSize, GameField.RowDefinitions.Count, GameField.ColumnDefinitions.Count, true);
I kiedy robie coś takiego to czy poprzedni obiekt zostanie zniszczony czy dalej zostaje w pamięci? Obiekty są niszczone po utracie ostatniej referencji prowadzącej do nich, tutaj niby tworzę nowy obiekt, więc poprzednia referencja w teorii znika? Dobrze rozumuję? Czy to podejście jest ok czy wpierw powinienem ustawić _point = null; i dopiero tworzyć nowy obiekt?
Pete_
Pete_

Liczba postów : 4
Join date : 07/02/2014

Powrót do góry Go down

Nadpisanie zmiennej referencyjnej obiektu a usunięcie obiektu Empty Re: Nadpisanie zmiennej referencyjnej obiektu a usunięcie obiektu

Pisanie by Fores Pon Lut 10, 2014 11:26 pm

Poprzedni obiekt staje sie niedostepny. Moze nie znika tak od razu, ale po pewnym czasie GC go sobie usunie z pamieci.
Fores
Fores

Liczba postów : 73
Join date : 30/05/2013
Age : 34
Skąd : Katowice

Powrót do góry Go down

Nadpisanie zmiennej referencyjnej obiektu a usunięcie obiektu Empty Re: Nadpisanie zmiennej referencyjnej obiektu a usunięcie obiektu

Pisanie by Pete_ Wto Lut 11, 2014 6:34 am

Czyli takie podejście jest ok?
Przypisanie do nulla nic nie zmienia?

Pete_
Pete_

Liczba postów : 4
Join date : 07/02/2014

Powrót do góry Go down

Nadpisanie zmiennej referencyjnej obiektu a usunięcie obiektu Empty Re: Nadpisanie zmiennej referencyjnej obiektu a usunięcie obiektu

Pisanie by Fores Wto Lut 11, 2014 5:07 pm

Przypisujac nowa instancje danej klasy do obiektu zrywasz aktualna referencje. Obiekt dalej istnieje gdzies w pamieci, ale nie masz juz do niego dostepu. Jak bedzie potrzeba zostanie on automatycznie usuniety, zwalniajac pamiec.
Jak dasz wczesniej do nulla to rezultat jest taki sam.
Fores
Fores

Liczba postów : 73
Join date : 30/05/2013
Age : 34
Skąd : Katowice

Powrót do góry Go down

Nadpisanie zmiennej referencyjnej obiektu a usunięcie obiektu Empty Re: Nadpisanie zmiennej referencyjnej obiektu a usunięcie obiektu

Pisanie by Sponsored content


Sponsored content


Powrót do góry Go down

Powrót do góry


 
Pozwolenia na tym forum:
Nie możesz odpowiadać w tematach