|
发表于 2007-4-8 00:23:46
|
显示全部楼层
Post by Fixend
但你不觉得2个空格很容易把分块搞错吗,特别是跨越多行时。
而且我对他们的"{"号的对齐位置很不惯。
比如
呵呵,你可以试着仔细读一些 GNU 的源代码,比如 Emacs、GCC 等的源代码。我发现它们非常清晰易懂。2 个空格的缩近可能是少了点,但在嵌套有许多层的情况下(这在一些具有复杂逻辑的应用中是非常常见的),这更容易保证程序的右边界不超过 80 个字符。
喜爱 GNU 的风格也许只是爱屋及乌。但我现在确实更希望将花括号像下面这样缩近 (来源: Emacs):
- DEFUN ("cond", Fcond, Scond, 0, UNEVALLED, 0,
- doc: /* Try each clause until one succeeds.
- Each clause looks like (CONDITION BODY...). CONDITION is evaluated
- and, if the value is non-nil, this clause succeeds:
- then the expressions in BODY are evaluated and the last one's
- value is the value of the cond-form.
- If no clause succeeds, cond returns nil.
- If a clause has one element, as in (CONDITION),
- CONDITION's value if non-nil is returned from the cond-form.
- usage: (cond CLAUSES...) */)
- (args)
- Lisp_Object args;
- {
- register Lisp_Object clause, val;
- struct gcpro gcpro1;
- val = Qnil;
- GCPRO1 (args);
- while (!NILP (args))
- {
- clause = Fcar (args);
- val = Feval (Fcar (clause));
- if (!NILP (val))
- {
- if (!EQ (XCDR (clause), Qnil))
- val = Fprogn (XCDR (clause));
- break;
- }
- args = XCDR (args);
- }
- UNGCPRO;
- return val;
- }
复制代码
看得多的就习惯了,喜不喜欢是另一回事儿;但无论如何,把程序写得清晰易懂、使别人接手时困难尽可能的少,应该是各种不同风格相同的目标。 |
|