- 俺が作るかもしれないスレ
8 :名前は開発中のものです。[sage]:2013/10/04(金) 15:25:35.67 ID:1sDA81tE - >>2 追加
俺をゲーム屋にしてください!! 最近モチベ低下激しい俺がゲーム作るスレ クリスマスに向けて俺がゲーム作るので助けて 【ツクール】俺たちでドラクエを作ろうぜ【2000】 NEETの俺達が無料ソフトだけでゲームを作るスレ13 俺だって作りたいさ… 俺に優しく格ゲーの作り方を教えるスレ おまえら俺にLunaでゲーム作らスレ 俺にCGI作成から設置までつきあうスレ
|
- C/C++ゲーム製作総合スレッド Part4
280 :名前は開発中のものです。[sage]:2013/10/04(金) 15:31:33.71 ID:1sDA81tE - >>279
原則っていうかザックリ言うと、スコープから外れたときにdeleteを自動でやってくれる。 func(){ }
|
- C/C++ゲーム製作総合スレッド Part4
281 :名前は開発中のものです。[sage]:2013/10/04(金) 15:38:32.32 ID:1sDA81tE - >>280 ごめん途中で送信してしまった
func(){ smart_ptr<foo> bar(new foo); なんかごにょごにょ } <- barだけしか使ってないならここで解放 これが基本だが、スマポ同士で代入ができるやつは関数の戻り値に渡したりするとスコープを超えられるのもある。 なので、いろいろな場所で使っていても、結果的にすべて共有しなくなった時にdeleteしてくれたりする。
|
- C/C++ゲーム製作総合スレッド Part4
288 :名前は開発中のものです。[sage]:2013/10/04(金) 16:42:12.87 ID:1sDA81tE - 単純な仕掛けだけど、これ考えたやつ頭いいよな。
解放忘れがないか、二重デリートがないか、インスタンスが生きているか、適切なライフサイクルか、、、、 などと複雑になりやすいコードに神経を使うよりも、 スマポを持ってたら生きているのが保障されるからコードが見やすくバグも少なくなるし。 たとえば、STGなんかで親子関係を持った敵がいたとして 親が破壊されたとき、子は生きていて親を参照している場合、 スマポなら親を生存リストから外すだけでおkで、子が全滅した時点で勝手にdeleteされるなーんて。 生ポならずっと子が生きているか監視しなければならないし。 この部分のコードが減るだけでバグが少なくなるよね。 ほんとスマートだわ。
|
- C/C++ゲーム製作総合スレッド Part4
289 :名前は開発中のものです。[sage]:2013/10/04(金) 16:48:05.11 ID:1sDA81tE - >>287
基本的にどのタイミングで解放されてもいいんだよ。むしろ気にするような組み方はよろしくない。 アクセスしたときに必ず生存していることが重要。 循環参照には気を付けないといけないけど。
|
- C/C++ゲーム製作総合スレッド Part4
291 :名前は開発中のものです。[sage]:2013/10/04(金) 17:00:08.29 ID:1sDA81tE - >>290
そんなギチギチの環境で組んでるの? たぶん、そんな複雑な参照してる場合は設計を一度見直したほうがいい場合があるよ。
|