>>20
基本は、C++処理系が用意している assert よりもエレガントな処理を
してくれる assert を提供してくれるってことだよね。
assert の中は何を書いてもよいわけで、別に変数の値チェックに限られる
わけではない。
たとえば、処理の途中経過をテキストダンプして、あらかじめ作成しておいた
正しいダンプ結果との差分をチェックしてもよい。
assert( system( "diff …" ) == 0 ) ってな感じで。