2009-11-01から1ヶ月間の記事一覧

例外処理のコスト

例外が発生しない限り、実行時間に関しては急激に重くはならない。(if文で例外を投げるかどうかを判定するコストぐらい。ローカルオブジェクトの解放のための処理は実行されない限り実行時間のコストに影響しない。) 参照 本"BinaryHacks"にg++のSjLjとDWARF…

命名規則

コーディングをするときは、この規則に対して、個々の言語の規則を上書きする。 大文字・小文字 メンバ・メソッド: camel case ローカル変数と区別がつくように。基本的に2単語以上の名前を付けるので、ローカル変数と区別がつく。 グローバル変数・メソッド…

関数内のオブジェクトの解放手法のまとめ

前提 関数内でのエラーはすぐにチェックしてreturn(goto)する。成功時のみのif文の書き方はしない ネストを浅くするため。欠点として、オブジェクトの解放場所を考慮する必要が出てくる。 ケント・ベックの"実装パターン"の"ガード条件"で記述されている。 …

ASSERT()の使い方

全ての処理には、前提条件・事後条件があり、その確認をする。バグ発見と意図の説明の2つの目的がある。 前提条件の例 例) 依存するオブジェクトの種類の確認、依存するオブジェクトの要素の数の確認、複数の引数の整合性のチェック 事後条件の例 例) 返し値…