エラー処理: まとめ
created
2019-08-13
last change
2019-08-14 07:49:59 +0000
Tweet
ここまでの試行錯誤から
C++ 例外処理
遅い
正常動作時には余分なリソースを食わない
後始末は全く簡単になってない
文法も複雑
煩雑なコードはそこまで改善しないと思う
戻り値や余分な引数は無くなる
std :: exception
やスマートポインタを利用できるのは楽
Cから引き続き
動作は早い
正常動作時にもリソースが割かれる
煩雑なコードになる
文法はまぁ、いつもの感じ
読みづらいと言えば読みづらい
戻り値や余分な引数などの犠牲が生じる
こちらでも別に
std :: exception
やスマートポインタを利用することはできる
void
fx
(
const
int
a
,
const
int
b
,
std
::
runtime_error
&
err
);
C系まともに例外処理する気があるのだろうか
Tweet
Technical Note
C++ Top
C++11 Tips
テンプレートテンプレートパラメータまとめ
std :: is_same と std :: is_base_of の挙動を調べる
using や typedef にもアクセス指定子が乗る
enum class 同士の計算を僕も実装してみた
クラステンプレートの特殊化ごとに継承元を変更する
可変引数テンプレートパラメータいろいろ
std :: conditional の判定式でエラー
テンプレート型変換演算子を特殊化する
has_trivial_assign は is_trivially_copy_assignable になった
ラムダ式を利用する
Error handling
エラー処理: 今までの方法
エラー処理: C++ の例外処理
エラー処理: コンストラクタとtry-catch
エラー処理: メンバクラスからの `throw`
エラー処理: その他見つけてしまった注意事項
エラー処理: まとめ
Tips
キャスト演算子のオーバーロード
アクセサ
Explicit specialization of “ after instantiation
特定のメンバ関数だけ特殊化
テンプレート特殊化の入り口
インターフェイスを継承して新しいインターフェイスを作る
基底クラスのメンバ関数を呼び出したいんだけど・・・
const static なメンバ変数の実装はヘッダファイルで行わない
純粋仮想関数は定義を持てる
インターフェイスの実験