青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

S.l.e!ep.¢%

像打了激速一樣,以四倍的速度運(yùn)轉(zhuǎn),開心的工作
簡單、開放、平等的公司文化;尊重個性、自由與個人價值;
posts - 1098, comments - 335, trackbacks - 0, articles - 1
  C++博客 :: 首頁 :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理

恐怖的C++語言

Posted on 2009-12-01 21:26 S.l.e!ep.¢% 閱讀(642) 評論(2)  編輯 收藏 引用 所屬分類: C++

Linus曾經(jīng)(2007年9月)在新聞組gmane.comp.version-control.git里和一個微軟的工程師(Dmitry Kakurin)爭執(zhí)過用C還是用C++,當(dāng)時的那個微軟的工程師主要是在做Git的Windows版,但他卻發(fā)現(xiàn)Git的源碼居然是C語言寫的,而不是C++,于是他(Dmitry Kakurin)在Linux社區(qū)里發(fā)貼表示對Linux的不滿,語言很直接:

Pure C as opposed to C++. No idea why. Please don’t talk about portability, it’s BS. (純C寫的,而不是C++,不知道為什么,請別告訴我是為了移植性,這完全是胡扯。)

Linux之父Linus Torvalds馬上跟貼,在貼子中,Linus言辭很直接,直接表明C++是一個很恐怖的語言,他在貼子中說:

*YOU* are full of bullshit. C++ is a horrible language. It’s made more horrible by the fact that a lot of substandard programmers use it. (你才是完全在胡扯。C++是一門很恐怖的語言,而比它更恐怖的是很多不合格的程序員在使用著它

Linus的這個觀點(diǎn)我是比較同意的,我個人也在幾年前的《STL String類的寫時才拷貝》以及以后的一些文章中表達(dá)過C++的確并不是一個很成熟的語言,這種觀點(diǎn)一直都圍繞著我。這是因為它的學(xué)習(xí)成本實(shí)在是太高了,編譯器和類背著你做了很多你不知道的事,而且,C++非常容易地出錯和發(fā)生很多意想不到的問題。

當(dāng)然,這篇文章并不是要繼續(xù)聲討C++,也不是回顧以前的某個事件。我們這里只談技術(shù)。昨天,我在網(wǎng)上看到一個邪惡的C++的示例,在這里給大家share一下,讓大家看看C++這種編程語言的恐怖和邪惡的一面。下面的這個例子,比那個“#define ?private ?public”還更加邪惡。

請看下面這段代碼,你能告訴我它會輸出什么嗎?(注意main函數(shù)中高亮的那一行)

01 #include <iostream>
02 #include <vector>
03 ??
04 typedef int UINT4;
05 using namespace std;
06 class Hack
07 {
08 };
09 ??
10 Hack& operator< (Hack &a , Hack &b)
11 {
12 ???? std::cerr << "小于操作符\n" ;
13 ???? return a;
14 }
15 ??
16 Hack& operator> (Hack &a, Hack &b)
17 {
18 ???? std::cerr <<? "大于操作符\n" ;
19 ???? return a;
20 }
21 ??
22 int main( int argc, char ** argv)
23 {
24 ???? Hack vector;
25 ???? Hack UINT4;
26 ???? Hack foo;
27 ??
28 ???? vector<UINT4> foo;
29 ??
30 return (0);
31 }

不是吧是的,上面這段代碼如果只看main函數(shù)中的那句“vector<UINT4> foo”,你會覺得很眼熟,然而,事情并非那么簡單,我們可以看到vector, UINT4和foo都是Hack類的實(shí)例,這就是邪惡的開始,那兩個尖括號< >則成了兩個運(yùn)算符,大于和小于,這兩個運(yùn)算符卻又被重載了。其實(shí),真正的語句是:

1 vector.operator<(UNIT4).operator>(foo);

所以,所有的一切都符合我們的C++的規(guī)范和語法,自然程序也能被順利編譯通過(至少,在我的G++上是沒有問題的)。而整個程序的運(yùn)行結(jié)果自然是:

1 $ ./horror
2 小于操作符
3 大于操作符

是的,如果你通曉C++的一切的一切,你自然不會對這段程序感到驚奇。這樣的事情在C/C++的世界中并不少見,要搞亂C/C++的代碼并不是一件難事,花樣多得數(shù)不勝數(shù),只要看看《6個變態(tài)的C語言Hello World程序》你就知道了,而且,還有一個簡單的教程《如何加密/混亂C源代碼》告訴你一些簡單的做法。

那么,如果你有一天在讀程序中看到“vector<UINT4> foo”,你會覺得那只是一個幻覺嗎?

(全文完)

Feedback

# re: 恐怖的C++語言  回復(fù)  更多評論   

2009-12-02 13:44 by zhaoyg
學(xué)習(xí)了

# re: 恐怖的C++語言  回復(fù)  更多評論   

2009-12-02 17:38 by 陳梓瀚(vczh)
你覺得這是C++(語法?書?社區(qū)?)誘導(dǎo)程序猿用這種囧變量名導(dǎo)致出現(xiàn)問題,還是完全是程序猿的責(zé)任他不知道這種變量名最好是不要用的才導(dǎo)致問題的?
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            欧美成人一区二区三区| 亚洲国产中文字幕在线观看| 久久av一区| 性欧美1819性猛交| 欧美专区福利在线| 久久免费精品日本久久中文字幕| 久久久精品一区| 欧美成人综合网站| 欧美日韩在线播放| 国产欧美精品一区二区三区介绍| 狠狠色2019综合网| 一本综合久久| 猫咪成人在线观看| 久久婷婷人人澡人人喊人人爽| 久久精品九九| 亚洲高清视频在线| 亚洲欧洲综合另类在线| 亚洲美女视频在线观看| 亚洲男人天堂2024| 欧美黑人在线观看| 国产欧美日韩视频一区二区| 亚洲高清激情| 欧美一区1区三区3区公司| 欧美二区在线观看| 亚洲欧美成人在线| 欧美激情精品久久久久久大尺度| 国产精品嫩草影院av蜜臀| 尤物在线观看一区| 亚洲自拍16p| 欧美激情精品久久久久久黑人| 亚洲天堂免费观看| 欧美激情一区二区三区在线| 国产在线精品成人一区二区三区| 一区二区高清在线| 亚洲高清在线| 久久精品国产亚洲精品| 欧美性色视频在线| 亚洲精选国产| 欧美国产精品一区| 久久精品一本| 国产欧美三级| 亚洲欧美日韩综合| 9i看片成人免费高清| 欧美波霸影院| 在线观看一区视频| 久久久久久夜| 久久大香伊蕉在人线观看热2| 国产精品福利网站| 亚洲欧美日韩爽爽影院| 一本久久综合| 国产精品福利网站| 亚洲欧美日韩精品综合在线观看| 日韩亚洲一区二区| 欧美日韩免费看| 一区二区福利| 一本久道久久综合狠狠爱| 欧美日韩国产999| 亚洲午夜免费福利视频| aa日韩免费精品视频一| 国产精品久久久久久影视 | 欧美顶级大胆免费视频| 国内精品福利| 美女精品一区| 乱码第一页成人| 亚洲精品久久久久| 亚洲人成网站色ww在线| 欧美精品一区二| 在线亚洲一区二区| 亚洲视频一二| 欧美区视频在线观看| 久久亚洲色图| 亚洲精品影院| 在线一区免费观看| 国产精品久久久一区麻豆最新章节| 亚洲在线观看| 欧美一区二区精品| 亚洲第一在线综合网站| 亚洲国产乱码最新视频| 欧美日韩亚洲一区二| 欧美一二区视频| 久久久之久亚州精品露出| 亚洲国产精品综合| 99精品国产99久久久久久福利| 国产精品国产三级国产a| 久久精品国语| 欧美成人一区二区三区在线观看 | 99re热这里只有精品免费视频| 国产精品久久久久久久午夜| 久久久精品tv| 欧美国产精品| 久久激五月天综合精品| 欧美二区不卡| 久久精品视频导航| 欧美日韩福利| 久久综合中文字幕| 欧美视频你懂的| 噜噜噜噜噜久久久久久91| 欧美理论视频| 免费不卡视频| 国产精品久久久久久久久婷婷 | 免费成人毛片| 香港成人在线视频| 欧美福利小视频| 性欧美办公室18xxxxhd| 欧美a级在线| 欧美中文字幕视频| 欧美日韩精品一区二区| 欧美 亚欧 日韩视频在线| 国产精品久久久久aaaa九色| 亚洲国产成人在线| 在线日韩精品视频| 久久精品国产亚洲aⅴ| 欧美一区二区国产| 欧美伦理一区二区| 免费在线欧美黄色| 黄页网站一区| 欧美一区二区高清在线观看| 亚洲欧美日韩综合| 欧美日韩人人澡狠狠躁视频| 欧美成人中文| 在线观看成人一级片| 亚洲女女女同性video| 亚洲一区二区在线免费观看视频| 女人香蕉久久**毛片精品| 开元免费观看欧美电视剧网站| 国产欧美日韩三级| 欧美一级视频| 久久久久成人精品| 欧美第一黄色网| 国产亚洲一本大道中文在线| 日韩一区二区精品视频| 日韩午夜一区| 免费精品99久久国产综合精品| 久久久久久午夜| 国产午夜精品一区二区三区欧美| 亚洲一区二区三区色| 夜久久久久久| 欧美日韩一区二区视频在线观看| 亚洲欧洲精品一区二区三区波多野1战4 | 欧美日韩中文字幕| 亚洲国产精品女人久久久| 亚洲国产激情| 免费不卡在线观看av| 亚洲激情女人| 亚洲一区二区在线观看视频| 国产精品成人一区二区艾草| 亚洲免费影视| 久久久一二三| 亚洲国产综合91精品麻豆| 免费一区视频| 99热免费精品| 久久狠狠一本精品综合网| 亚洲国产激情| 国产精品免费看片| 久久人体大胆视频| 亚洲久久一区| 欧美在线你懂的| 亚洲品质自拍| 国产精品免费在线| 久久精品夜色噜噜亚洲aⅴ| 欧美国产三区| 亚洲欧美视频在线| 1000部国产精品成人观看 | 极品少妇一区二区三区精品视频| 猛男gaygay欧美视频| 亚洲精品日韩在线| 亚洲欧美综合一区| 亚洲成人原创| 国产精品福利网站| 久久香蕉精品| 亚洲一区二区免费视频| 久久野战av| 亚洲视频每日更新| 黄色精品网站| 国产精品久久久久久五月尺| 久久手机免费观看| 亚洲天堂视频在线观看| 免费在线欧美视频| 亚洲女女女同性video| 亚洲国产精品成人一区二区 | 国产视频在线观看一区二区三区 | 欧美中文字幕视频| 亚洲精品麻豆| 噜噜噜噜噜久久久久久91| 亚洲午夜精品一区二区| 亚洲电影专区| 国产综合久久久久久| 欧美亚州韩日在线看免费版国语版| 欧美在线999| 久久综合国产精品台湾中文娱乐网| 欧美日韩免费观看一区| 久久精品卡一| 亚洲少妇自拍| 亚洲国产影院| 免费成人毛片| 久久久噜噜噜久久| 亚洲欧美另类久久久精品2019| 亚洲精品国产品国语在线app | 亚洲最快最全在线视频| 亚洲国产精品久久久久秋霞不卡|