2024年12月12日木曜日

いちばん取れないバグが変数名の間違い

C++で書いたプログラムがエラーで終了する。
  • 数値範囲の想定ミス?
  • ロジック設計のミス?
違った。
  • ライブラリの使い方が間違っている?
ライブラリ仕様を時間をかけておさらいしたが違った。
  • そもそも使っているC++の言語の仕様を完全に理解してない?
言語仕様を長い時間かけておさらいしたが違った。

ここまでで1週間。打つ手なしと思った。以前動いていた類似プログラムと何が違うのか。そしたら...

1箇所変数名を間違えていた

ことを発見した。似たような変数名が他にあってそれと間違えていた。ただそれだけ。これで1週間を潰してしまうとは無念だ。

以前もrubyで書いたプログラムのバグが取れずに延々悩んだ結果、変数名の間違いと気づいたことが一度あったことを思い出した。

C++やrubyは新規に変数を宣言することが自由にできてそこが試行錯誤が多い研究開発用プログラミングには良いとも言えるのだが、クラス記述のときに宣言しなかった変数を使ったらシステムが弾いてくれる厳密なオブジェクト指向言語ならこういうことは起こらない。

0 件のコメント:

コメントを投稿