[過去ログ] Delphiゲームプログラミング相談室 (976レス)
前次1-
抽出解除 レス栞

このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
762
(3): 名前は開発中のものです。 [] 2006/03/18(土) 11:52:37 ID:P6tvauUW(1/2) AAS
キャラクタのクラス設計で悩んでいます。

キャラクタクラスは複数のアイテムを持っています。
アイテムはレコードで定義されています。
持っているアイテムデータは隠蔽しておき、アイテムにアクセスする時は
配列プロパティを使おうと思っています。tom.Items[0]みたいに。

今悩んでいるのが、この配列プロパティが何を返すか。
アイテムレコード型のポインタを返すと、誤ってそのポインタの参照先を
開放することもあるのでどうかと思うし、かといってアイテムレコードを
そっくり返すのもコスト的にどうかなあと思うわけで。
どうするのがいいですかね?
764: 762 [] 2006/03/18(土) 15:40:43 ID:P6tvauUW(2/2) AAS
2はちょっとねえ。
やはり1が現実的ですかね。
767
(1): 名前は開発中のものです。 [sage] 2006/03/23(木) 05:31:35 ID:XSRlXE4W(1) AAS
>>762
アイテムもクラスにする。
772: 名前は開発中のものです。 [sage] 2006/03/28(火) 15:11:23 ID:K1F24TVC(1) AAS
>>762
自分なら、>>767も書いてる通りアイテムクラスを作って、プロパティに
アイテム上限数をつける(上限があるなら)。
アイテムのデータはアイテムクラスの中のTListで保存して、外からは
Tアイテム.ItemofIndex[1]みたいな感じで呼べるようにしとくかな。
クラスを解放した時は自動的にTListも解放するようにする。
銀行の中のアイテムに関しては、このクラスをそのまま銀行用にもう1コ
呼ぶか、もしくは銀行の中のアイテムかどうかのflagをつけるとか。

とかどうだろうw
前次1-
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル

ぬこの手 ぬこTOP 0.032s