ささだです。

 ruby-src:ruby/README.EXT.ja で、わからないところがあるので
質問させてください。

------------------------------------------------------------
3.3 CのデータをRubyオブジェクトにする

Cの世界で定義されたデータ(構造体)をRubyのオブジェクトとして
取り扱いたい場合がありえます.このような場合には,Dataという
RubyオブジェクトにCの構造体(へのポインタ)をくるむことでRuby
オブジェクトとして取り扱えるようになります.

Dataオブジェクトを生成して構造体をRubyオブジェクトにカプセル
化するためには,以下のマクロを使います.

  Data_Wrap_Struct(klass, mark, free, ptr)

このマクロの戻り値は生成されたDataオブジェクトです.

klassはこのDataオブジェクトのクラスです.ptrはカプセル化する
Cの構造体へのポインタです.markはこの構造体がRubyのオブジェ
クトへの参照がある時に使う関数です.そのような参照を含まない
時には0を指定します.

# そのような参照は勧められません.
------------------------------------------------------------

1.何が勧められないのか
2.なぜ勧められないのか

 よろしくお願いします。

-- 
// SASADA Koichi @ namikilab.tuat.ac.jp
//