2016-03-16 29 views

回答

7

在MATLAB中沒有什麼像指針,有local workspaces

似乎MATLAB很聰明,只要需要就做一個副本並返回,如果不需要,就通過「指針」(不知道它)。正如@Daniel和@zeeMonkeez指出的那樣,在Loren的博客here中對此進行了討論,她在here內部創建了內存時明確回答了函數返回問題。在這些帖子中的總體思路是「MATLAB不會複製,除非它需要」基本上MATLAB從內存管理中抽象出你。


旁註:有類似的指針,如果你真的需要利用這一點。請參閱@excaza的評論。

+0

[你可以在MATLAB指針(ish)](http://www.matlabtips.com/how-to-point-at-in-matlab/):) – excaza

+0

@excaza好,是的,技術上是真的,你可以用它做一些奇怪的事情!但那不是一般情況。 –

+3

這是不正確的。 Matlab使用copy-on-write這意味着out將永遠不會被複制。 – Daniel