Gotcha (编程)

Gotcha(发音[英][ˈɡɔtʃə][美][ˈɡɑtʃə]),在计算机编程领域中是指在系统或程序程序设计语言中,合法有效,但是會誤解意思的构造,程式容易造成错误,或是一些易于使用但其结果不如期望的構造。字面上是got you的简写,常用于口语,直译为: “逮着你了”、“捉弄到你了 ”、“你中计了” 、“骗到你了”。[1]

例子编辑

一个典型的gotcha是C/C++中的:

if (a = b) code;

大多数情形,编程者的意图是:

if (a == b) code;

现代编译器在这种情形(条件表达式中是个赋值而不是逻辑比较)会产生一条编译警告消息。通行的编程风格建议[2]在比较表达式的左侧是个常量,如: 42 == x 而不是 x == 42,参见尤達條件式

相關條目编辑

参考文献编辑

  1. ^ Gotcha definition at The Jargon File. [2018-11-02]. (原始内容存档于2015-12-20). 
  2. ^ "VOID EXP21-C. Place constants on the left of equality comparisons". [2018-11-02]. (原始内容存档于2016-10-11). 

进一步阅读编辑

  • Stephen C. Dewhurst. C++ Gotchas (Avoiding Common Problems in Coding and Design). Addison-Wesley. 2003. ISBN 0321125185. 

外部链接编辑