Ruby 初心者スレッド Part 16
■ このスレッドは過去ログ倉庫に格納されています
0299240
2007/12/23(日) 05:54:50>>298
概念は全然違う。
2次元配列風に使う分には問題ないと思うが、違いを分かって使わないと細かいことを
し始めたとき引っかかるかも。
例えば(Cでいう)1次元配列と2次元配列とで処理を分けたいのなら、Arrayの要素が
全てArrayであり、そのArray内のArrayの要素数が全て同じであることをあらゆる
配列アクセス時にチェックしないといけない。
arr[5][10]のように使いたい場合、「君の仕様上」間違ってarr[5][11]に代入しても
Rubyではエラーにならないので、真面目に2次元配列として使いたいならばArrayを
継承してそういうチェックを代入時や参照時にするようなメソッドを足す必要がある。
このチェックだけ足せばいいってわけでもないけど、とにかくCの2次元配列とは違う
ものだとわかった上で使わないと、罠にはまるだろうね。
■ このスレッドは過去ログ倉庫に格納されています