クラス名・変数名に迷ったら書き込むスレ。Part12
■ このスレッドは過去ログ倉庫に格納されています
0356デフォルトの名無しさん
2008/07/13(日) 00:44:34自分も最近そういうコーディングをする場面に出会った。
で、directionが真ならsend、偽ならreceiveというのは違和感がある。
もちろん「真はreceiveだろ」と言いたいわけではない。
is_sendという変数名の方が適切にも思えるが、
「is_sendが偽というのはreceiveを意味する」というのもおかしい。
後でこのようなソースを見た人間は、is_sendが真ならsendであるということは
自明であると判断してくれるだろうが、is_sendが偽というのは単にsendではない
ということが自明であるだけで、必ずしもreceiveであるとは限らないのでは?
と勘繰ってしまうことも考えられる。
(最近糞コードの改修の仕事が多いせいか、自分は勘繰ってしまう。)
ならばと、以下のように列挙型にしてみたけれど、Cの列挙型って単なる整数でしかなく、
何を代入してもOKなのでやっぱり今ひとつだなあ。
typedef enum {SEND, RECEIVE} SendOrReceive;
SendOrReceive send_or_receive;
send_or_receive = SEND;
if (send_or_receive == SEND)
printf("send\n");
send_or_receive = 0; // ←こういうのがエラーにならないのが困る。
■ このスレッドは過去ログ倉庫に格納されています