エントリーの編集
エントリーの編集は全ユーザーに共通の機能です。
必ずガイドラインを一読の上ご利用ください。
『bad_allocをthrowされたときの動作を理解する』
記事へのコメント0件
- 注目コメント
- 新着コメント
このエントリーにコメントしてみましょう。
注目コメント算出アルゴリズムの一部にLINEヤフー株式会社の「建設的コメント順位付けモデルAPI」を使用しています
- バナー広告なし
- ミュート機能あり
- ダークモード搭載
関連記事
『bad_allocをthrowされたときの動作を理解する』
例外を投げられたときにプログラムがどんなふうに動作するか理解しておくことは重要でしょう。 operator... 例外を投げられたときにプログラムがどんなふうに動作するか理解しておくことは重要でしょう。 operator new をオーバーロードすることで簡単にbad_allocを投げるクラスを定義できます♪ コンストラクタの中で例外が投げられたときどんな動作をするのか? すでに new に成功しているオブジェクトはdeleteされるのか? 確認するためのちょっとしたサンプルプログラムを作ってみました。 #include <iostream> #include <new> using namespace std; class Widget { public: Widget() { cout << __FUNCTION__ << endl; } ~Widget() { cout << __FUNCTION__ << endl; } void* operator new (size_t size) { s