アカウント名:
パスワード:
#define WORD hogehoge#define DWORD foobar大体こういう場合サイズが重要だったりするけど、いちいち"WORD"とはどうdefineされているか辿っていかなければならないって本末転倒。特に移植後間もないコードだったりすると、以前の環境でのintを想定していたとか元担当者に訊かないといけないはめになる。
こういうのって, 最近は直接
typedef int16_t hogehoge
みたいに, 名前にサイズを含めた形にすることが多いんじゃないでしょうかね.
20年以上前だと, 周辺機器やCPUのリファレンスマニュアルで “WORD” とかの記述が多かったので, それに合わせてdefineすることが多かったとは思いますが.
Win APIに毒されているのか16bitだとなんでも“WORD”にしちゃって符号があるのか無いのかばらばらだったり。プロトコル上の定義がword=32bitの装置開発やっているのに紛らわしいったらありゃしない。
grepすれば定義場所はわかるけど理由はソース読み込まないとわからない。コメントでどうしてWORDがhogehogeなのか書いてあればいいんだけどね。
むしろ、WORDなんて使用目的のわからない名前よりも、使用目的の分かる名前にして欲しい。サイズは同じでも、使用目的が異なるものに同じ名前が使われていると、使用目的に準じたサイズなのかを判断するのが面倒だし、仕様変更の時に影響が及ぶ範囲がわかりにくい。
より多くのコメントがこの議論にあるかもしれませんが、JavaScriptが有効ではない環境を使用している場合、クラシックなコメントシステム(D1)に設定を変更する必要があります。
「科学者は100%安全だと保証できないものは動かしてはならない」、科学者「えっ」、プログラマ「えっ」
見たくないけどあるあるなコード (スコア:0)
#define WORD hogehoge
#define DWORD foobar
大体こういう場合サイズが重要だったりするけど、いちいち"WORD"とはどうdefineされているか辿っていかなければならないって本末転倒。
特に移植後間もないコードだったりすると、以前の環境でのintを想定していたとか元担当者に訊かないといけないはめになる。
Re:見たくないけどあるあるなコード (スコア:1)
こういうのって, 最近は直接
typedef int16_t hogehoge
みたいに, 名前にサイズを含めた形にすることが多いんじゃないでしょうかね.
20年以上前だと, 周辺機器やCPUのリファレンスマニュアルで “WORD” とかの記述が多かったので, それに合わせてdefineすることが多かったとは思いますが.
Re: (スコア:0)
Win APIに毒されているのか16bitだとなんでも“WORD”にしちゃって符号があるのか無いのかばらばらだったり。
プロトコル上の定義がword=32bitの装置開発やっているのに紛らわしいったらありゃしない。
Re: (スコア:0)
grepすれば定義場所はわかるけど理由はソース読み込まないとわからない。
コメントでどうしてWORDがhogehogeなのか書いてあればいいんだけどね。
Re: (スコア:0)
むしろ、WORDなんて使用目的のわからない名前よりも、使用目的の分かる名前にして欲しい。サイズは同じでも、使用目的が異なるものに同じ名前が使われていると、使用目的に準じたサイズなのかを判断するのが面倒だし、仕様変更の時に影響が及ぶ範囲がわかりにくい。