【求助】公司统一规定"{"必须放在行末,这很不习惯,我该怎么办?
我是一名拥有多年嵌入式C语言编程经验的工程师。虽然不是专业的程序员出身,但是在代码书写规范上一直掌握得非常好!因为我曾经仔细研究过林锐博士的《高质量C++/C编程指南》一书(没看过该书的衷心地建议您买一本)。 这两年,公司规模不断壮大,规矩当然也随之多起来。规矩一多,自然会影响做事效率。 最近上面下发了一个新通知,要求所有工程师都必须执行公司内部的《C/C++编程规范》。很不幸,我不是该《规范》的制定者,而是被执行者。公司规模扩大后,出这么一个东西的重要意义显而易见,林锐博士的书中也有详细论述。这个我不但不反对,而且完全赞成。只是对其中的某些“规范条款”觉得不是很合适。其中对我今后编程影响最大的就是左花括号“{”问题了。 公司《规范》规定:左花括号“{”必须放在一行的末尾,例如函数、if/for/while/switch语句,等等;右花括号“}”必须与函数名、if/for/while/switch的首字母对齐。举个例子:
int Max(int iX, int iY) { if ( iX >= iY ) { return iX; } else { return iY; } }
这可麻烦了!一直以来我的习惯都是和林锐博士风格一致,即:“{”和“}”都独立占一行,并且位于同一列,同时与引用它们的语句(就是if/for之类)左对齐。还是上面那个简单的例程,按此风格可以写成:
int Max(int iX, int iY) { if ( iX >= iY ) { return iX; } else { return iY; } }
我想,看帖的各位大都是后一种风格吧?而且国内绝大多数C/C++程序员都是后一种风格。然而,公司的《规范》偏偏不是这样。 这种《规范》里的条款令我非常不适应!我已经将该意见反馈给上面了,但得到答复是:公司不可能同时制定两套规范,所以必须严格执行。 我该怎么办呢?改变早已形成的习惯?“两本帐”,一套自己玩,一套应付上面的检查?还是换个……?不敢想象!希望看帖的各位同行能给我指点迷睛,谢谢!
|