2012-02-20 81 views
0

是的我知道Ruby沒有指針,但這是我能夠描述我想要做的最接近的指針。在C++中,我可以增加一個指向數組的指針,它將指向數組的第二個元素作爲開始(基本上就像從位置1到大小-1的拼接)。 Ruby中是否有類似的技巧?我在一個數組中有一組步驟,並且想要調用一個方法「next_step」,它將向下移動一個數組。我可以做到這一點,而不必有另一個名爲step_num(當前指數)的ivar嗎?Ruby中的數組指針算術

編輯:我不能拼接數組,因爲它被封裝在一個對象中,我需要保持這種方式。我不想讓副本浮動。

回答

2

您可以使用一個枚舉:

a = [ 1, 2, 3 ] 
e = a.to_enum 

e.next # => 1 
e.next # => 2 
e.next # => 3 
+0

這是什麼做嵌套的對象嗎?數組中的東西都是包含對象的對象。這些將被平坦化還是隻是循環它們? – Chris 2012-02-20 15:39:05

+0

它確實返回對象,所以這正是我所需要的。謝謝! – Chris 2012-02-20 15:51:20

+0

它返回引用(類似於C++指針)。 – 2012-02-20 16:05:21