7.1 面試概述
小編整理了一些常問到的,如:
1.介紹一下STL,詳細說明STL如何實現vector。
2.如果用VC開發(fā)程序,常見這么幾個錯誤,C2001,c2005,c2011,這些錯誤的原因是什么。
3.繼承和委派有什么分別,在決定使用繼承或者委派的時候需要考慮什么。
4.指針和引用有什么分別;如果傳引用比傳指針安全,為什么?如果我使用常量指針難道不行嗎?
5.參數傳遞有幾種方式;實現多態(tài)參數傳遞采用什么方式,如果沒有使用某種方式原因是什么;
6.結合一個項目說明你怎樣應用設計模式的理念。
7.介紹一下你對設計模式的理解。(這個過程中有很多很細節(jié)的問題隨機問的)
8.C++和C定義結構的分別是什么。
9.構造函數可否是虛汗數,為什么?析構函數呢,可否是純虛的呢?
構造函數不可是虛函數,因為構造函數的調用一般出現在對象創(chuàng)建的同時或之前,這是無法用指向其對象(尚未創(chuàng)建)的指針來引用它。
析構函數可以為虛函數,此時這一組虛函數的函數名是不同的。擋在析構函數中采用基類的指針釋放對象時,應把析構函數說明為虛函數,以確定釋放的對象。
10.拷貝構造函數相關問題,深拷貝,淺拷貝,臨時對象等。
11.結合1個你認為比較能體現OOP思想的項目,用UML來描述。(最好這個項目繼承,多態(tài),虛函數都有體現)這個問題大概會占面試時間的一半,并且會問很多問題,一不小心可能會被問住)。
12.基類的有1個虛函數,子類還需要申明為virtual嗎?為什么。
13.C也可以通過精心封裝某些函數功能實現重用,那C++的類有什么優(yōu)點嗎,難道僅僅是為實現重用。
14.C++特點是什么,如何實現多態(tài)?畫出基類和子類在內存中的相互關系。
15.為什么要引入抽象基類和純虛函數?
16.介紹一下模板和包容器。如何實現?(也許會讓你當場舉例實現)
17.你如何理解MVC。簡單舉例來說明其應用。
18,多重繼承如何消除向上繼承的二義性。
19.智能指針,com實現的原理,
20.printf()可變參數如何實現
21.標準模板庫vector追加數據如何實現。是底層如何實現,不能用現有的東東。
22.還有,java的垃圾收集機制如何實現為什么?如果是你自己實現垃圾收集機制,如何實現? 用什么數據結構。
23.二叉排序樹和哈希表那個查找效率高,實用于pda 。
24..net的底層實現機制。
25.進程間通信如何實現。
26.還有迭代問題,什么問題用迭代,迭代在操作系統中如何實現的 。
27.如何交換兩個變量,不能用中間變量。
28.c與c++ static函數的區(qū)別???
29.const 函數的作用,如何實現鉤子函數。
30.兩層容錯技術怎么實現?
31.寫出函數指針,函數返回指針,const指針,指向const的指針,指向const的const指針。
32.函數調用如何實現,注意什么問題。
33.指針和引用的差別,
34.拷貝構造函數如何實現,什么情況下會用到。
35.銷售有業(yè)務員,客戶代表,客戶經理,區(qū)域經理……更多你愿意從哪個值為開始做,希望自己的職位怎么做。
36.設想自己在這個崗位上的未來。
37.簡單的自我介紹,而后就是測試題:“你開著一輛車。在一個暴風雨的晚上。你經過一個車站。有三個人正在等公共汽車。一個是快要死的老人,好可憐的。一個是醫(yī)生,他曾救過你的命,是大恩人,你做夢都想報答他。還有一個女人 /男人,她/他是那種你做夢都想嫁(娶)的人,也許錯過就沒有了。但你的車只能坐一個人,你會如何選擇那?請解釋一下你的理由!
38.你是應屆畢業(yè)生,缺乏經驗,如何能勝任這項工作?
39.英語能力怎樣,閱讀回復英文郵件是否有問題?
40.如果工作中和同事觀點出現矛盾怎么辦?
41.你最希望得到什么
42.你是否用我們公司的手機?