エントリーの編集
エントリーの編集は全ユーザーに共通の機能です。
必ずガイドラインを一読の上ご利用ください。
記事へのコメント2件
- 注目コメント
- 新着コメント
注目コメント算出アルゴリズムの一部にLINEヤフー株式会社の「建設的コメント順位付けモデルAPI」を使用しています
- バナー広告なし
- ミュート機能あり
- ダークモード搭載
関連記事
ポインタを使ったデータ構造をHaskellの代数的データ型と相互変換したい
struct ST_VEC3D_LIST { double x; double y; double z; struct ST_VEC3D_LIST * next; }; というような... struct ST_VEC3D_LIST { double x; double y; double z; struct ST_VEC3D_LIST * next; }; というような構造体を定義してやるのが常套手段です。 要素を追加するときは next ポインタでつないでいって、リストを手繰るときは next ポインタを再帰的に参照していくことになります。リストの終端は next に NULL を代入することで表現します。 さて、このようなデータをHaskellで扱いたくなったときのことを考えます。上記のようなデータを受け取ったり返したりするCの関数をFFIで呼びたくなったとか、そういうCの関数を QuickCheck でテストしたくなったとか。 とりあえずHaskellに用意されている Foreign.Ptr を使って、struct ST_VEC3D_LIST と同じ構造を定義してみまし
2019/01/28 リンク