[過去ログ] GCは失敗。メモリは自分で管理せよ! その2©2ch.net (720レス)
上下前次1-新
抽出解除 必死チェッカー(本家) (べ) 自ID レス栞 あぼーん
このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
170: デフォルトの名無しさん [sage] 2015/12/05(土) 14:33:31.47 ID:9PUwCRa0(1/4) AAS
C++でRAIIを徹底しておくのが一番いいよ
解放タイミングのコントロールが必要になったら後からでも柔軟に対応できるし
GCは解放に係る少し変わった条件が発生した時に滅茶汚いことをしなきゃならなくなる
172(1): デフォルトの名無しさん [sage] 2015/12/05(土) 14:43:55.34 ID:9PUwCRa0(2/4) AAS
確保/解放を直に書くのはスピード的には一番速いだろうけど解放漏れバグの温床過ぎてネ
特に例外が絡むとやってられない状況になる
176: デフォルトの名無しさん [sage] 2015/12/05(土) 14:59:01.89 ID:9PUwCRa0(3/4) AAS
>>175175(1): デフォルトの名無しさん [sage] 2015/12/05(土) 14:52:20.59 ID:NRX1k+Is(3/6) AAS
>>172
>特に例外が絡むとやってられない状況になる
そこだけはstd::unique_ptr<T>の一押し
これで例外状況でのRAIIが完成するので真にGCが要らんところまで逝く
ていうか大概のアプリなら、例外を生じたらFatal errorなことをユーザーに知らせて終了、でいいんじゃ…
いやーリソース獲得した状態でファイルI/Oとかネットワークとかが絡む場合は終了じゃすまん場合が多いでしょ
184: デフォルトの名無しさん [sage] 2015/12/05(土) 15:50:01.56 ID:9PUwCRa0(4/4) AAS
>>183183(1): デフォルトの名無しさん [sage] 2015/12/05(土) 15:39:23.63 ID:eGerJrSR(4/5) AAS
C++にfinallyが無いのが気に食わない
今はラムダが有るのでマクロでそれっぽいものを自作したが
標準で用意しておいてほしい
C++はリソースを自分で管理する傾向のある言語なのに
finallyが無いのは本来おかしいよな
ラッパー作ってRAIIを徹底しろってことなんだろうけど
すべてのリソースに対してラッパーを用意するのは面倒だよ
fainallyが有ったって邪魔になるわけでもないのに
最終的に使うかどうかは利用者が選べばよいことだし
C++ってそういう言語だろ
C++にはテンプレートがあるからリソースの型をテンプレート引数とするラッパーを作るのは
そんなに面倒なことじゃないと思う
あとC++でRAIIを徹底してればfainallyの必要性を感じたことはない
fainallyを書かなければいけない時点で危なっかしいコードだと思う
上下前次1-新書関写板覧索設栞歴
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル
ぬこの手 ぬこTOP 0.032s