

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、1.介紹一下STL,詳細(xì)說明STL如何實現(xiàn)vect。STL(標(biāo)準(zhǔn)模版庫,StardTemplateLibrary)它由容器算法迭代器組成。STL有以下的一些優(yōu)點:可以方便容易地實現(xiàn)搜索數(shù)據(jù)或?qū)?shù)據(jù)排序等一系列的算法;調(diào)試程序時更加安全和方便;即使是人們用STL在UNIX平臺下寫的代碼你也可以很容易地理解(因為STL是跨平臺的)。vect實質(zhì)上就是一個動態(tài)數(shù)組,會根據(jù)數(shù)據(jù)的增加動態(tài)的增加數(shù)組空間。2.如果用VC開發(fā)程序,常見這么幾個錯誤,
2、C2001c2005c2011這些錯誤的原因是什么。在學(xué)習(xí)VC的過程中,遇到的LNK2001錯誤的錯誤消息主要為:unresolvedexternalsymbol“symbol”(不確定的外部“符號”)。如果連接程序不能在所有的庫和目標(biāo)文件內(nèi)找到所引用的函數(shù)、變量或標(biāo)簽,將產(chǎn)生此錯誤消息。一般來說,發(fā)生錯誤的原因有兩個:一是所引用的函數(shù)、變量不存在、拼寫不正確或者使用錯誤;其次可能使用了不同版本的連接庫。編程中經(jīng)常能遇到LNK2005錯
3、誤——重復(fù)定義錯誤,其實LNK2005錯誤并不是一個很難解決的錯誤.3.繼承和委派有什么分別,在決定使用繼承或者委派的時候需要考慮什么。在OODOOP中,組合優(yōu)于繼承.當(dāng)然多態(tài)的基礎(chǔ)是繼承,沒有繼承多態(tài)無從談起。當(dāng)對象的類型不影響類中函數(shù)的行為時,就要使用模板來生成這樣一組類。當(dāng)對象的類型影響類中函數(shù)的行為時,就要使用繼承來得到這樣一組類.4.指針和引用有什么分別;如果傳引用比傳指針安全,為什么?如果我使用常量指針難道不行嗎?(1)引用
4、在創(chuàng)建的同時必須初始化,即引用到一個有效的對象;而指針在定義的時候不必初始化,可以在定義后面的任何地方重新賦值(2)不存在NULL引用,引用必須與合法的存儲單元關(guān)聯(lián)而指針則可以是NULL.(3)引用一旦被初始化為指向一個對象,它就不能被改變?yōu)榱硪粋€對象的引用;而指針在任何時候都可以改變?yōu)橹赶蛄硪粋€對象給引用賦值并不是改變它和原始對象的綁定關(guān)系(4)引用的創(chuàng)建和銷毀并不會調(diào)用類的拷貝構(gòu)造函數(shù)(5)語言層面,引用的用法和對象一樣;在二進(jìn)制層
5、面,引用一般都是通過指針來實現(xiàn)的,只不過編譯器幫我們完成了轉(zhuǎn)換.不存在空引用,并且引用一旦被初始化為指向一個對象,它就不能被改變?yōu)榱硪粋€對象的引用,顯得很安全。const指針仍然存在空指針,并且有可能產(chǎn)生野指針.總的來說:引用既具有指針的效率,又具有變量使用的方便性和直觀性5.參數(shù)傳遞有幾種方式;實現(xiàn)多態(tài)參數(shù)傳遞采用什么方式,如果沒有使用某種方式原因是什么;傳值,傳指針或者引用6.結(jié)合一個項目說明你怎樣應(yīng)用設(shè)計模式的理念。子類繼承父類大
6、部分的資源,不能繼承的有構(gòu)造函數(shù),析構(gòu)函數(shù),拷貝構(gòu)造函數(shù),operat=函數(shù),友元函數(shù)等等15.為什么要引入抽象基類和純虛函數(shù)?主要目的是為了實現(xiàn)一種接口的效果。16.介紹一下模板和容器。如何實現(xiàn)?(也許會讓你當(dāng)場舉例實現(xiàn))模板可以說比較古老了,但是當(dāng)前的泛型編程實質(zhì)上就是模板編程。它體現(xiàn)了一種通用和泛化的思想。STL有7種主要容器:vectlistdequemapmultimapsetmultiset.17.你如何理解MVC。簡單舉例
7、來說明其應(yīng)用。MVC模式是observer模式的一個特例典型的有MFC里面的文檔視圖架構(gòu)。18.多重繼承如何消除向上繼承的二義性。使用虛擬繼承即可.1.以下三條輸出語句分別輸出什么?[C易]str1[]=“abc”str2[]=“abc”conststr3[]=“abc”conststr4[]=“abc”conststr5=“abc”conststr6=“abc”coutboolalpha(str1==str2)endl輸出什么?cou
8、tboolalpha(str3==str4)endl輸出什么?coutboolalpha(str5==str6)endl輸出什么?2.非C內(nèi)建型別A和B,在哪幾種情況下B能隱式轉(zhuǎn)化為A?[C中等]答:a.classB:publicA……B公有繼承自A,可以是間接繼承的b.classBoperatA()B實現(xiàn)了隱式轉(zhuǎn)化為A的轉(zhuǎn)化c.classAA(constBA實現(xiàn)了nonexplicit的參數(shù)為B(可以有其他帶默認(rèn)值的參數(shù))構(gòu)造函數(shù)d.
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- c++基礎(chǔ)面試題
- gamesloft c++面試題目
- c,c++面試題目總匯
- c++經(jīng)典面試題庫 附帶參考答案
- c++筆試面試題帶答案
- c++筆試面試題目大匯總
- c++開發(fā)工程師面試題庫
- 外企經(jīng)典面試題
- 網(wǎng)絡(luò)經(jīng)典面試題
- 重解幾道華為經(jīng)典c語言面試題
- 近期出現(xiàn)的c++面試題整理(附詳細(xì)答案)
- 近期出現(xiàn)的c++面試題整理(附詳細(xì)答案)
- 經(jīng)典行為面試題目
- c++經(jīng)典面試筆試剖析
- 嵌入式c語言面試題匯總(超經(jīng)典)
- linux內(nèi)核經(jīng)典面試題
- 經(jīng)典面試題及答案
- c++經(jīng)典筆試題
- 酒店總經(jīng)理經(jīng)典面試題
- c語言高級面試題
評論
0/150
提交評論