>>231
まさかと思うけど>>225でcatch書かなきゃf()やg()で発生した例外はそのままh()の呼び出し側に伝搬すること知らんのか?
あと、例えば引数がおかしいと言う例外なら例外情報に引数の値などを含めて一番外側でログを採るとかするから
>   Z h2(P const & p, Q const & q0, Q const & q1) {
>     return f(p) * g(q0) * g(q1);
>   }
> だとより複雑になる
なんてことはない