[過去ログ] C++相談室 part164 (1002レス)
上下前次1-新
抽出解除 レス栞
このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
185(4): デフォルトの名無しさん (アウアウウー Sadd-g1CP) [sage] 2023/06/14(水) 10:15:22.04 ID:iWYHYN4ra(1/3) AAS
>>182
new で造って delete (または delete []) で解放
187(2): デフォルトの名無しさん (テテンテンテン MMeb-jufV) [sage] 2023/06/14(水) 12:29:45.65 ID:XEzvAdInM(1) AAS
>>182
>>185とほとんど同じだけどunique ptrで管理。
ヒープの確保時間が問題になるならアロケーター使ってヒープを予約する。
190(3): デフォルトの名無しさん (ワッチョイ 219b-q0yD) [sage] 2023/06/14(水) 14:03:16.39 ID:0kIiqVrM0(1/2) AAS
>>183
ありがとうございます
> getrusage
を試してみようと思います
>>185-187
STL コンテナを使うとしても自作クラスを使うとしても、オブジェクトを unique_ptr で持つことにして要らなくなったら reset() すれば確保していた分のメモリを捨てられるということでしょうか
依存関係が絡み合っていて簡単に小さいスコープに分割できないときは試してみようと思います
205(1): デフォルトの名無しさん (ワッチョイ 219b-q0yD) [sage] 2023/06/15(木) 12:02:49.40 ID:J1cG0ikp0(2/3) AAS
>>201
いや、ポインタのサイズなんて全く気にしてない。
質問は、メモリの解放をコンテナに任せるならわざわざスマポで持つ意味ないよね? ってこと。
で、コンテナに任せるというのは元の質問(>>182)への回答に全くなってないよね? ってこと。
(その理由は>>184,200様の書いてくださってる通り)
つーかお前が何も分かってないのは>>195でreset()しなくて良いとかほざいてる時点でお察し。
>>203-204
笑
>>203は>>191で「reset()しなくても良い」とかほざいてて>>195と同レベ。
>>183-185,194,197,200様
ご丁寧な回答をくださりどうもありがとうございました。
勉強になります。
227(1): デフォルトの名無しさん (テテンテンテン MM96-Axrn) [sage] 2023/06/17(土) 10:36:04.78 ID:koF9X0k9M(1) AAS
>>226
「大きいメモリが割り当てられてるオブジェクトを使用後に破棄したい」なら
>185か>187。
>187はunique ptrの置き場所と解放タイミングによって解放の仕方が違って、自動変数にして関数やスコープから抜けるタイミングで解放するなら手動操作不要、vectorなどのヒープに置くとかスコープの終わり前に解放したいとかならreset()とかvectorの要素削除とかで手動解放。
いずれにしても、自動変数に巨大インスタンスを考え無しに置くのは悪手で、そのオブジェクトがスタックに巨大データを置かない(ヒープ等に置く)ことを確認してからにしたほうがいい。
上下前次1-新書関写板覧索設栞歴
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル
ぬこの手 ぬこTOP 1.701s*