2012-07-12 64 views
-1
  1. 返回數組索引還是返回整個數組?數組如何在Ruby中返回?

  2. 那麼數組的壽命呢?如果我們不返回創建的數組,它會繼續佔用內存空間還是會在我們離開函數時自動釋放?

我是OOP和Ruby的新手。我以前完成過C語言。

+0

是否有任何理由讓這個特定於數組?對於所有對象來說都是一樣的。 – 2012-07-12 02:46:40

回答

2

一些關於Ruby的東西。首先,Ruby是一種垃圾收集語言,因此根據Ruby的實現,垃圾收集器將在不同的時間釋放內存空間。第二,目前還不清楚你的意思是「數組迴歸」。如果你的意思是來自一個方法,那麼引擎蓋下發生的事情的問題可能也是一個實現。從程序員的角度來看,整個數組被返回。是否引用同一塊內存很可能是一個關於變量範圍的問題,當然可以通過值而不是引用來返回整個數組。

Ruby的標準實現,也稱爲MRI或Matz的Ruby,是用C語言編寫的並且是開源的,所以你可以看到C code for an array,包括它的內存分配和釋放函數。