ps:我以前使用过宏......但通常当我有一个“真正的”解决方案时我最终会摆脱它们(即使真正的解决方案是内联的,所以它变得类似于宏)。
根据记忆,它看起来像这样:
#define RETURN(result) return (result);} int myfunction1(args) { int x = 0; // do something RETURN(x) int myfunction2(args) { int y = 0; // do something RETURN(y) int myfunction3(args) { int z = 0; // do something RETURN(z)
是的,没错,任何函数中都没有右括号。语法高亮一团糟,所以他用 vi 来编辑(不是 vim,它有语法着色!)
他是一位俄罗斯程序员,主要从事汇编语言工作。他热衷于保存尽可能多的字节,因为他以前曾在内存非常有限的系统上工作。“它是用于卫星的。只有很少的字节,所以我们将每个字节用于很多事情。” (有点摆弄,将机器指令字节重用于它们的数值)当我试图找出什么样的卫星时,我只能得到“轨道卫星。用于进入轨道”。
他还有两个怪癖:一个安装在显示器上方的凸面镜“用于知道谁在看”,以及偶尔突然从椅子上下来做十个快速俯卧撑。他将最后一个解释为“编译器在代码中发现错误。这是惩罚”。