【发布时间】:2016-04-28 17:22:44
【问题描述】:
用 Pascal 写这样的表达式不合法吗:
b += c; {Take whatever in b and add what in c to it, then assign it back to b}
或者你必须写
b := b + c;
我想知道顶部方法在 Pascal、Object 或 Delphi 中是否合法,或者您是否必须使用老式方法,例如底部方法。
【问题讨论】:
-
您可以在 C/C++ 中执行此操作,但在 pascal 中不行。
-
当你尝试它时会发生什么?编译器告诉你什么?在我看来,您可能比单击
并在此处写第一句话更快地弄清楚这一点。我们很乐意提供帮助,但您现在应该学会在没有我们的情况下不要完全无助。 -
上次我在 delphi 程序中写了
b += c;,编译器告诉我它是无效的......但也许它不知道正确的 Pascal 语法。 -
为什么你认为这是正确的 Pascal 语法?
-
@MBo - 他们这样做:例如,用于将项目添加到集合(列表、数组、集合)的统一接口。当然,代价是潜在的混乱。在基于 C 的语言中,':=' 不会产生任何值,你可以
a =b =c =d。所以基本上 Pascal 强制执行冗长,eine action - eine 语句。并牺牲了简洁简洁的速记。这就是 Delphi 中的 lambda 对样板文件如此肥胖以至于几乎不实用的原因