老码农:这是我见过最操蛋的代码,切勿模仿!



本文章展示的代码的片段来自知乎的同名问答贴,举出来一些反面例子,切勿模仿,就当轻松一刻了吧。

题主 的补充  

String result;  
......  
return result.toString();

这种算吗?大家尽情吐槽吧

Cyandev 的分

if (m_doc->isModified() == true)  
{  
    for (int i = 0; i < 100; i++)  
    {  
        save();  
//Save the document for 100 times to ensure it has been saved successfully.  
    }  
}

不知谁写的,总之我都看哭了。

侯杰 的分享

enum FiveLine  
{  
  Gold,  
  Wood,  
  Water,  
  Fire,  
  Earth,  
};

枚举名字不知道五行(hang)是什么鬼,看了枚举内容恍然大悟,原来是五行(xing)……

李旭东 的吐槽

<div class="div1">  
    <div class="div2">  
        <div class="div3">  

        </div>  
        <div class="div4"></div>  
    </div>  
</div>

………  

<div class="div27">  
    <div class="div28">  


    </div>  
</div>  


…………  

<div class="div396">  
    <div class="div397"></div>  
</div>  

…………  

<div class="giveMeAFuckingClassName">  

</div>

白砂糖 的分享

// 以下所有left代表右  

// 以下所有right代表左

Kun Andy 的分享

public enum ColorType  
{  
  Green,  
// 绿色  


  Hong,  
// 红色  

}  

//......  

this.curColortype= ColorType.Hong;  
......

毫无违和感!英语和汉语的激烈碰撞,一时愣是没读懂代码,“Hong”为何物,你看注释才恍然大悟!犀利

可能是绿的拼音(lv) 有点像等级,所以为了防止歧义,用了Green!赞一个!

程序员很可爱,我爱程序猿大家庭!

这些蕴含智慧的代码是礼物也是惊喜!

可以帮你拉这么多zan!感谢!

真爱身边的程序员!

爱他们

孙传武 的分享

有次看一项目源码,注释里有个warning。

// warning: Do not make any changes here.  
// I got confused why it can run successfully.  
// PLEASE Do not make any changes before you figure it out.

绅士提督不笑船 的分享

变量名

class UplaodDuiLie  
// 上传队列  

// Uplaod 非手误,完全原文。  
// 为什么你们只吐槽 typo 而不吐槽中英文混合呢。。

myd7349 的分享

从长度上来说,完爆楼上各位的。感受下:

if(m_Str2.Find("'")>=0)  
{  
    AfxMessageBox("您输入的包含非法字符");  
    m_Str2="";  
    UpdateData(FALSE);  
    return;  
}  

if(m_Str2.Find(':')>=0)  
{  
    AfxMessageBox("您输入的包含非法字符");  
    m_Str2="";  
    UpdateData(FALSE);  
    return;  
}  

if(m_Str2.Find('/')>=0)  
{  
    AfxMessageBox("您输入的包含非法字符");  
    m_Str2="";  
    UpdateData(FALSE);  
    return;  
}  


if(m_Str2.Find('!')>=0)  
{  
    AfxMessageBox("您输入的包含非法字符");  
    m_Str2="";  
    UpdateData(FALSE);  
    return;  
}  

if(m_Str2.Find('@')>=0)  
{  
    AfxMessageBox("您输入的包含非法字符");  
    m_Str2="";  
    UpdateData(FALSE);  
    return;  
}  

if(m_Str2.Find('#')>=0)  
{  
    AfxMessageBox("您输入的包含非法字符");  
    m_Str2="";  
    UpdateData(FALSE);  
    return;  
}  

if(m_Str2.Find('$')>=0)  
{  
    AfxMessageBox("您输入的包含非法字符");  
    m_Str2="";  
    UpdateData(FALSE);  
    return;  
}  

if(m_Str2.Find('%')>=0)  
{  
    AfxMessageBox("您输入的包含非法字符");  
    m_Str2="";  
    UpdateData(FALSE);  
    return;  
}  


if(m_Str2.Find('&')>=0)  
{  
    AfxMessageBox("您输入的包含非法字符");  
    m_Str2="";  
    UpdateData(FALSE);  
    return;  
}  

if(m_Str2.Find('^')>=0)  
{  
    AfxMessageBox("您输入的包含非法字符");  
    m_Str2="";  
    UpdateData(FALSE);  
    return;  
}  

if(m_Str2.Find('*')>=0)  
{  
    AfxMessageBox("您输入的包含非法字符");  
    m_Str2="";  
    UpdateData(FALSE);  
    return;  
}  

if(m_Str2.Find('(')>=0)  
{  
    AfxMessageBox("您输入的包含非法字符");  
    m_Str2="";  
    UpdateData(FALSE);  
    return;  
}  

if(m_Str2.Find(')')>=0)  
{  
    AfxMessageBox("您输入的包含非法字符");  
    m_Str2="";  
    UpdateData(FALSE);  
    return;  
}  

if(m_Str2.Find('/')>=0)  
{  
    AfxMessageBox("您输入的包含非法字符");  
    m_Str2="";  
    UpdateData(FALSE);  
    return;  
}  

if(m_Str2.Find('|')>=0)  
{  
    AfxMessageBox("您输入的包含非法字符");  
    m_Str2="";  
    UpdateData(FALSE);  
    return;  
}  

if(m_Str2.Find(':')>=0)  
{  
    AfxMessageBox("您输入的包含非法字符");  
    m_Str2="";  
    UpdateData(FALSE);  
    return;  
}  

if(m_Str2.Find('[')>=0)  
{  
    AfxMessageBox("您输入的包含非法字符");  
    m_Str2="";  
    UpdateData(FALSE);  
    return;  
}  

if(m_Str2.Find(']')>=0)  
{  
    AfxMessageBox("您输入的包含非法字符");  
    m_Str2="";  
    UpdateData(FALSE);  
    return;  
}  

if(m_Str2.Find('{')>=0)  
{  
    AfxMessageBox("您输入的包含非法字符");  
    m_Str2="";  
    UpdateData(FALSE);  
    return;  
}  

if(m_Str2.Find('}')>=0)  
{  
    AfxMessageBox("您输入的包含非法字符");  
    m_Str2="";  
    UpdateData(FALSE);  
    return;  
}

哪怕不知道正则表达式,也该知道 FindOneOf 啊?!就是再不济,也写个循环吧。谨遵 DRY 原则的程序员看到这段代码受到了 1024 Kg 的伤害。

当然,还有什么:一个线程回调函数函数写了 700 多行的事情咱就不说了。

一个小小的项目专门定义了名叫 Global.h/cpp 的文件来放置全局变量咱也不说了。一个小小的项目中一二百个全局变量咱也不说了,这些全局变量中大部分还是指针变量咱也甭说了!!!

我去哭一会去。

青苔 的分享

看见这段代码的时候,我拍了很久的掌……

虎耳 的吐槽

曾经在一个家公司,有一次有人发现对每个请求,有个地方都会空等了一秒。

后来问老大,他说如果客户有新要求,随时可以把性能提高一倍以上。

作者/知乎答主 :zhihu.com/question/30776912

©️2020 CSDN 皮肤主题: 大白 设计师:CSDN官方博客 返回首页