小编典典

你遇到过的最糟糕的现实世界宏/预处理器滥用是什么?

all

ps:我以前使用过宏......但通常当我有一个“真正的”解决方案时我最终会摆脱它们(即使真正的解决方案是内联的,所以它变得类似于宏)。


阅读 59

收藏
2022-08-19

共1个答案

小编典典

根据记忆,它看起来像这样:

#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,它有语法着色!)

他是一位俄罗斯程序员,主要从事汇编语言工作。他热衷于保存尽可能多的字节,因为他以前曾在内存非常有限的系统上工作。“它是用于卫星的。只有很少的字节,所以我们将每个字节用于很多事情。”
(有点摆弄,将机器指令字节重用于它们的数值)当我试图找出什么样的卫星时,我只能得到“轨道卫星。用于进入轨道”。

他还有两个怪癖:一个安装在显示器上方的凸面镜“用于知道谁在看”,以及偶尔突然从椅子上下来做十个快速俯卧撑。他将最后一个解释为“编译器在代码中发现错误。这是惩罚”。

2022-08-19