《數(shù)據(jù)結(jié)構(gòu)(C++)》學(xué)習(xí)輔導(dǎo)系列:序言(2)

字號:

于是我采用了單工程單cpp的結(jié)構(gòu),就是一個工程只有一個cpp文件,放 main(),其他的部分都是頭文件,聲明和實(shí)現(xiàn)放在一起——其實(shí)這是違反c++規(guī)范的,c++要求函數(shù)必須聲明原型,實(shí)際上,我覺得這很羅嗦(我這是典型的c后遺癥,以前用tc時為了不聲明原型,把函數(shù)都放到main()前面),聲明一下原型,我認(rèn)為這和設(shè)定密碼需要確認(rèn)一個道理。由于使用的ide環(huán)境,把聲明單獨(dú)集中起來作為一個文件已經(jīng)沒有必要——classview窗口很好用,就因?yàn)槿绱?,我?guī)缀鯊膩聿蝗タ搭惖穆暶魑募3悄闾峁┑氖且粋€庫,在你的工程中單獨(dú)的聲明文件已經(jīng)不是必須的了。當(dāng)然,這里的前提是從一個空的工程建立你的項(xiàng)目。如果你使用了appwizard,我很難想象不使用 classwizard的。因?yàn)檫@時文檔的結(jié)構(gòu)已經(jīng)確定了,你所做的實(shí)際上是在修修補(bǔ)補(bǔ)。
    什么人適合讀這些文章
    l 剛開始從c過渡到c++的人,看完這些后,會體會到c++的新特性。
    l 和我一樣研讀那本黃皮書的人,希望看完之后能更好的理解和學(xué)習(xí)。
    l 從未編寫過超過1000行代碼程序的人,這樣我們才能達(dá)到共鳴。因?yàn)槲覀儚膩聿皇褂霉ぞ吆蛶煳募?,做的事都是在編程老手看來很蠢的事?BR>    一些約定
    假定你使用的是vc6,先建立一個win32 console application的empty project。后面將陸續(xù)往這個工程中添加文件(就是將后面介紹的每一個文件都添加進(jìn)去,不然到時候找不到xx.h不要埋怨),每一個#ifndef xx_h~#endif和其中的部分為一個頭文件,文件名為xx.h。例如:
    #ifndef list_h
    #define list_h
    ……
    #endif
    這一大塊為一個文件,文件名為list.h