Przecież tak właśnie działała moja pierwsza funkcja (...)
Slynx, przeczytaj jeszcze raz wątek śledząc uważnie kontekst moich wypowiedzi, bo odnoszę wrażenie, że go gubisz i tworzysz niepotrzebne dyskusje nad czymś, czego nie ma.
Więc jak to w końcu jest ?
W C++ wszystkie obiekty stworzone na stercie, czyli poprzez operator new, powinny zostać usunięte operatorem delete. Tu automatyzm, taki jak w przypadku obiektów stworzonych na stosie, nie zachodzi.
Jeśli chodzi o GC w C++/CLI, to z tego co wyczytałem, wywołanie delete nie powoduje natychmiastowego zwolnienia pamięci, tak jak to ma miejsce w standardowym C++, jedynie wywołuje destruktor klasy (pamięć oczywiście zostanie w swoim czasie zwolniona przez GC). Takie jawne niszczenie obiektu ma sens tylko wtedy, gdy za tym niszczeniem idą konkretne działania (np. zamknięcie połączenia czy strumienia plikowego), które muszą być wykonane w danej chwili. Generalnie odsyłam do jakiejś literatury, bo tu sprawa niszczenia obiektów jest nieco bardziej zawiła niż w C++.






