2009-01-01から1ヶ月間の記事一覧
すぐ忘れるので,メモ. inline 関数は,先行宣言しておくことで,定義が使用場所より後にある場合でも問題なく使える.
過去記事「テンプレートの部分特殊化を利用した間接参照型推定」では,テンプレートのテンプレートの部分特殊化 (Wikipedia)を使ってポインタ型やイテレータ型からそれを間接参照した型(ポインタを取った型)を推定する方法を紹介した.この方法を使って,…
liboctave を使っていると,例えば要素数の異なる列ベクトルを足そうとしたときに fatal: operator +: nonconformant arguments (op1 len: 2, op2 len: 5) というエラーが発生し,プログラムが正常終了する.正常終了とは exit(1) による終了で, コアファイ…
C/C++ で,エラーを検出してプログラムを強制終了する場合, exit(EXIT_FAILURE) とか abort() を使う.このうち abort() はコアを吐いてから終了してくれるから(linux の場合),コアを gdb などで解析することにより,デバッグが楽になる.例えば gdb a.o…