2016-03-16 8 views

Odpowiedz

7

W MATLABie nie ma nic podobnego do wskaźnika, są tam local workspaces.

Wygląda na to, że MATLAB jest inteligentny i wykonuje kopię i zwraca w razie potrzeby i przechodzi przez "wskaźnik" (bez wiedzy użytkownika), jeśli nie jest potrzebny. Jak zauważyli @Daniel i @zeeMonkeez, jest to omawiane na blogu Lorena here i odpowiada ona wyraźnie na temat zwracanych funkcji, gdy pamięć została utworzona wewnątrz here. Ogólny pomysł w tych postach brzmi: "MATLAB nie skopiuje, chyba że jest to potrzebne". Zasadniczo MATLAB usuwa Cię z zarządzania pamięcią.


Sidenote: Jest coś takiego jak wskaźniki, jeśli naprawdę trzeba to wykorzystać. Zobacz komentarz @ excaza.

+0

[Możesz mieć wskaźniki (ish) w MATLAB] (http://www.matlabtips.com/how-to-point-at-in-matlab/) :) – excaza

+0

@excaza dobrze, tak, technicznie prawda, ty potrafię z tym zrobić trochę dziwacznych rzeczy! Ale to nie jest przypadek ogólny. –

+3

To nie jest prawda. Matlab używa copy-on-write, co oznacza, że ​​'out' nigdy nie zostanie zduplikowane. – Daniel

Powiązane problemy