最大程度講述C++編譯語言種種特點
C++編譯語言可以使程序從循環(huán)體和switch語句內(nèi)跳出,繼續(xù)執(zhí)行邏輯上的下一條語句。不宜用在別處,結(jié)束本次循環(huán),接著判斷是否執(zhí)行下一次循環(huán),所以由c++編譯器產(chǎn)生的代碼一定比vb的編譯代碼效率更高。
一個好的程序與一個偉大的程序的區(qū)別就是其是否具有良好的錯誤處理支持。實際上,如果在實現(xiàn)中首先進行錯誤處理,而不是在最后才進行,那么整個程序的開發(fā)和測試過程會更加完美。但是,錯誤處理只能與語言所支持的內(nèi)容相一致。
vbscript具有基本的錯誤處理支持功能。在默認(rèn)情況下,不能捕獲vbscript中的錯誤。每次懷疑產(chǎn)生錯誤時,要調(diào)用on error resume next功能,并檢查error對象。而C++中的錯誤處理比較好,這是因為有“異常處理”,本章的后面部分將詳細(xì)介紹。
最小的依賴性
正如上面所說,C++編譯語言,即C++代碼在執(zhí)行之前已轉(zhuǎn)換為機器碼。只要此代碼不依賴于外部的動態(tài)鏈接庫(dll),C++就可以在不需要安裝額外程序的情況下移動到運行同樣操作系統(tǒng)的其他機器和微處理器上,而移動java程序時需要先安裝java運行期庫。
利用現(xiàn)有的代碼
由于c和C++已經(jīng)存在許多年了,現(xiàn)在有許多可利用的代碼,你的服務(wù)器組件可以使用現(xiàn)有的c/C++代碼或庫。例如統(tǒng)計庫和到老系統(tǒng)的c接口。
最大化com特征
com與C++很接近,實際上, don box(com的權(quán)威)在他的《essential com》一書的第一章寫道:“com就是更好的C++”。他說明了com規(guī)范是如何從C++語言規(guī)律中產(chǎn)生出來的。通過理解C++,會對com有更深的理解。某些語言不能利用所有的com特征,而在C++中,幾乎可以使用所有的com特征。
知道什么時候使用C++編譯語言重要的,同樣,知道什么時候不使用C++也是重要的。想像一下那些長期維護代碼的人,如果他們中沒有一些C++程序員支持C++,那么開發(fā)者們不得不把眼光轉(zhuǎn)向另外一些他們熟悉的語言。
改變C++組件時,為了看到這些改變的結(jié)果,必須重新編譯該組件代碼,這會花費很長的開發(fā)時間。C++不能像asp頁面代碼那樣,只使用記事本,改變代碼的一行,重新裝載而得到結(jié)果。因此,如果某些工作需要經(jīng)常變化(如原型),不要用C++。
在C++中,對一些致命的錯誤不能獲得更多的保護,寫一個使組件崩潰的代碼是很容易的。這是為了提供快速代碼而付出的代價, C++不會停下來去檢查代碼是否按設(shè)計運行能否使程序不崩潰依賴于開發(fā)者的技巧。如果在這方面花的時間較少或剛剛學(xué)習(xí)C++,最好不要使用C++。
等到已經(jīng)意識到C++中所有容易犯的錯誤,而且在檢測組件之前花了許多時間,才可以使用C++,如果想很快、很容易地建立一個組件,而且也不考慮該組件的執(zhí)行速度,那么使用vb吧!學(xué)習(xí)新東西的最好方法就是利用現(xiàn)有的技巧。對于asp開發(fā)者來說,已經(jīng)學(xué)習(xí)了C++所要求的許多技巧,特別是,jscript語法和activex或com的面向?qū)ο缶幊痰母拍睢?/P>
1. jscript
大部分asp開發(fā)者都用jscript在瀏覽器上使用dhtml。jscript的語法與c非常相似,所以,如果懂得jscript,那么就懂得基本的c語法。當(dāng)然,只是C++語法的子集。C++有許多額外的語法來支持面向?qū)ο缶幊?,這就是我們下一步要做的。
2. 面向?qū)ο缶幊?/STRONG>
如果你在vb中使用過類(class),則對任何com對象和文檔對象模型(document objectmodel,dom )都應(yīng)熟悉,因為已經(jīng)有了面向?qū)ο缶幊?oop)的概念。在前面已經(jīng)說過, c和C++的區(qū)別是C++支持面向C++編譯語言。


2010-01-13 13:58:49
2010-01-21 13:33:44
2010-02-06 09:53:26




