VC自体とは直接関係なく、ちょっと宗教的なことになってしまいますが、
みなさんのスタイルを伺ってみたいので、質問させていただきます。
ソースは何文字で折り返しておられますでしょうか。
自分の場合は、最初に教わった方法が80文字で、
それが染みついていて今でもその書きかたなのですが、
それに合わせるために変数名などを短くするのは逆に可読性を下げるでしょうし、
reinterpret_castとかの書きかたなんかを導入すると、
綺麗に80文字で収めるのなんかまず無理になります。
いい加減、この80文字から脱退したほうがいいのかと思っているのですが、
かといって無制限に横にズラズラ書いていくのもどうかと思っています。
社内的な規約があれば別ですが、個人の範囲で書く場合、
だいたいどのくらいの値が現在の「相場」なのでしょうか?
> 自分の場合は、最初に教わった方法が80文字で、
昔のパソコン(NEC)はテキスト画面とグラフィック画面があり、
ディスプレイ(CRT)が2つの画面を合成して表示してました。
この時代はテイスト画面の1行が半角で80文字、行数が25行でした。
ここからテキスト・エディタで1行80文字、1関数22行ルールができました。
22行とは、エディタのタイトルバー、ファンクション・キーなどを引いた値です。
現在、私は1行は文字数ではなくソースコードの見やすさを重要視して区切ります。
全体的には、1行120文字になるように合わせてますが、これはテキスト・エディタの
スクロールしないで見やすい桁数を基準に決めたものです。
しかし、関数の定義行は1行で記述するようにしてるため文字数は120文字を超えたり、
引数の多い関数は1引数1行ルールとして改行します。
> だいたいどのくらいの値が現在の「相場」なのでしょうか?
会社とか、グループによって異なるから一概には言えないと思う。
マイルール:1行136文字以内
理由:学校にあったラインプリンタが1行136カラムだったので
厳密に守っているか:No
理由:
・ツールで機械的生成するソースコードに対しては守る理由がない
・ #define (の定義・利用)を行分割するとミスが怖い・逆に読みにくい
・初期化子並びを行分割するとミスが怖い・逆に読みにくい
俺コードに関してちょっと調べてみたら
・132カラム超過=5%くらい
超過行は先のとおり #define マクロ(を定義、を利用)ないしは初期化子並び
・80以上132カラム以下=15%くらい
・80カラム以下=8割
各種 GNU 系ソフトのソースでも調べてみるといいかもしれない。
python は比較的カラム数が少ない(100以下がほとんど)
ruby はカラム数を気にしていない傾向(ほとんど100以上)
>ソースは何文字で折り返しておられますでしょうか。
特に決めていませんが、おおよそ160文字程度まで、にしています。
ただし、努力目標としては100文字ぐらいですかね。
MSゴシック 9ポイントを使用していますが、画面の横幅が
1280[pixl]しかないのでこれくらいしか表示できません。
>かといって無制限に横にズラズラ書いていくのもどうかと思っています。
まぁ、画面に表示しきれないと色々と不便なので、このあたりに
してますです(vv;)。
C/C++では改行にコード上の意味がないので助かってますね。
長くなりがちなコードでも
DmyStr.Format( StrDmy, 【デバッグ】No[%d] %02X, %02X, %02X, %02X ,
i,
BYTE( Data->Ary[ 0]),
BYTE( Data->Ary[ 1]),
BYTE( Data->Ary[ 2]),
BYTE( Data->Ary[ 3]));
の様に書けるのでOK。
水平タブ幅を4にして……
228文字になっているモノがありました。
長すぎですな。
ほとんどの箇所では160字を越えない程度に抑えようとはしていますが…。
インデントもちょっと深くなっていたり…。
改行して、複数行に書く…というのはあまりやっていないです。
そうすればもう少し見やすくなるんでしょうけどね。
皆さんご意見ありがとうございます。
やはり自分のような80はやはり今の時代には少ないようです。
#defineなんかは、無理やり改行したり定数名を短くしたりと、
可読性を犠牲にしてまで信念を貫いたことがあります。
この機会に自分も80を脱退し、
1.5倍となる120あたりを目処に書いてみようかと思います。
もちろん、読みやすくなるならそれを超えても構わないという方向で。