루비 1.8.7 (2008-08-11 패치 레벨 72)에는 i586 리눅스] 스크립트/콘솔에서문제
:
>> pairs = Array.new(2).map!{Array.new(2).map!{Array.new(2, Array.new)}}
=> [[[[], []], [[], []]], [[[], []], [[], []]]]
>> pair = Pair.first
=> #<Pair id: 39, charge_card_id: 1, classroom_id: 1, timeslot_id: 1, created_at: "2010-04-01 00:45:37", updated_at: "2010-04-01 00:45:47">
>> pairs[0][0][0] << pair
=> [#<Pair id: 39, charge_card_id: 1, classroom_id: 1, timeslot_id: 1, created_at: "2010-04-01 00:45:37", updated_at: "2010-04-01 00:45:47">]
>> pairs[0][0]
=> [[#<Pair id: 39, charge_card_id: 1, classroom_id: 1, timeslot_id: 1, created_at: "2010-04-01 00:45:37", updated_at: "2010-04-01 00:45:47">], [#<Pair id: 39, charge_card_id: 1, classroom_id: 1, timeslot_id: 1, created_at: "2010-04-01 00:45:37", updated_at: "2010-04-01 00:45:47">]]
>>
따라서 문제는 한 쌍의 이유 객체는 쌍으로 나타납니다. [0] [0] [0] 그리고 쌍으로 나타냅니다. [0] [0] [1] 나는 거기에 나타나기를 부탁했습니다. } [0] [0] = pair - 첫 번째 배열 멤버로 원하므로 < < 또는 .push를 사용해야합니다. 나는 그것이 때문이었다 단지 메모리 포인터로 연결하는 깊은 배열의 생각
pairs = Array.new(2).map!{Array.new(2).map!{Array.new(2).map!{Array.new}}}
:와