こっそりと

議論はとうに収束しているようなので、こっそりと持論を書いてみたり。
ここのコメントに反応して
http://d.hatena.ne.jp/higepon/20050329


 複数人で開発する場合は命名規約を統一する必要があります。どのような命名規約を採用するかは重要ではありません*1。重要なのはそれをチーム全員が徹底する事です。例え、局所的に不条理に思える場合があったとしても、全員がそれに従う必要があります。適用不可能な事態に遭遇した場合、コーディング規約の論理的ミスになります。

 この時、言語仕様には(言語仕様が命名規約を定義しない場合)どのような命名規則でも対応出来る事が求められます。ですから、命名規約を適用した上で最悪のケースに遭遇した(例えば仮引数名がメンバ変数名とバッティングした)場合に、それを回避する方法があること(この場合はthis->によって識別可能)と、それを使用することは理にかなっていると思います。

 ここで「論理的なミスが起こらないコーディング規約なんて作れるの?」という疑問が出てきます。ごもっともです。さて(つづかない)

*1:異論はありましょうが