C++和操作系统面试问题分类
inline的使用是有所限制的,inline只適合函數(shù)體內(nèi)代碼簡單的函數(shù)使用,不能包含復雜的結構控制語句例如while switch,并且不能內(nèi)聯(lián)函數(shù)本身不能是直接遞歸函數(shù)(自己內(nèi)部還調(diào)用自己的函數(shù))
C++多態(tài)實現(xiàn)機制:在C++中,對于有virtual的類,其sizeof會比正常情況多處4個字節(jié)。既在類的最開始四個字節(jié),放的是VTABLE表的地址(void *類型)。而在VTABLE中,所有虛函數(shù)是以指針數(shù)組的形式存放。 對于派生的類,即時沒有重載基類的虛函數(shù),也會在其VTABLE占用一格。造成空間上的浪費。非虛基類沒有VTABLE,VTABLE是在構造的時候編譯器生成的。
??? 線程和進程:進程是操作系統(tǒng)資源分配的最小單位,線程是CPU運行的最小單位。linux中,使用的是用戶線程(對應核心線程:線程管理由內(nèi)核實現(xiàn)),而且是1:1形式,既每一個線程,都對應內(nèi)核中的一個輕量級進程,調(diào)度由內(nèi)核實現(xiàn),但是線程的管理(比如產(chǎn)生和結束),均有一個管理線程實現(xiàn)。管理線程在第一次調(diào)用pthread_create的時候生成。
軟件開發(fā)流程:
??? 需求分析和項目計劃:可行性計劃,項目計劃,需求分析,測試計劃
??? 軟件設計說明書:功能設計說明書,實現(xiàn)設計說明書
??? 使用手冊
測試報告
??? 項目總結
C++繼承機制:
??? n類成員的訪問控制方式
??? public:類本身、派生類和其它類均可訪問;
??? protected:類本身和派生類均可訪問,其它類不能訪問;
??? private(默認):類本身可訪問,派生類和其它類不能訪問。
繼承成員的訪問控制規(guī)則
??? ——由父類成員的訪問控制方式和繼承訪問控制方式共同決定
??? private+public(protectd,private)=>不可訪問
??? pubic(protected)+public=>public(protected)
??? public(protected)+protected=>protected
??? public(protected)+private(默認)=>private
??? C++中的模板和virtual異同? ==>?
??? private繼承和public繼承區(qū)別? ==>?
6. static有什么用途?(請至少說明兩種)
??? 1.限制變量的作用域
??? 2.設置變量的存儲域
7. 引用與指針有什么區(qū)別?
??? 1) 引用必須被初始化,指針不必。
??? 2) 引用初始化以后不能被改變,指針可以改變所指的對象。
??? 3) 不存在指向空值的引用,但是存在指向空值的指針。
8. 描述實時系統(tǒng)的基本特性
??? 在特定時間內(nèi)完成特定的任務,實時性與可靠性
9. 全局變量和局部變量在內(nèi)存中是否有區(qū)別?如果有,是什么區(qū)別?
??? 全局變量儲存在靜態(tài)數(shù)據(jù)區(qū),局部變量在堆棧
10. 什么是平衡二叉樹?
??? 左右子樹都是平衡二叉樹 且左右子樹的深度差值的絕對值不大于1
11. 堆棧溢出一般是由什么原因導致的?
??? 沒有回收垃圾資源
12. 什么函數(shù)不能聲明為虛函數(shù)?
??? constructor? ==>C++中的類的構造函數(shù)聲明
13. 冒泡排序算法的時間復雜度是什么?
??? O(n^2)
14. 寫出float x 與“零值”比較的if語句。
??? if(x>0.000001&&x<-0.000001)
? 16. Internet采用哪種網(wǎng)絡協(xié)議?該協(xié)議的主要層次結構?
??? tcp/ip 應用層/傳輸層/網(wǎng)絡層/數(shù)據(jù)鏈路層/物理層
17. Internet物理地址和IP地址轉換采用什么協(xié)議?
??? ARP (Address Resolution Protocol)(地址解析協(xié)議)
18.IP地址的編碼分為哪倆部分?
??? IP地址由兩部分組成,網(wǎng)絡號和主機號。不過是要和“子網(wǎng)掩碼”按位與上之后才能區(qū)分哪些是網(wǎng)絡位哪些是主機位。
19.用戶輸入M,N值,從1至N開始順序循環(huán)數(shù)數(shù),每數(shù)到M輸出該數(shù)值,直至全部輸出。寫出C程序。
??? 循環(huán)鏈表,用取余操作做? ——>??
20.不能做switch()的參數(shù)類型是:
??? SWITH(表達式),表達式可以是整型、字符型以及枚舉類型等表達式。
??? switch的參數(shù)不能為實型。
轉載于:https://www.cnblogs.com/wanghao111/archive/2009/08/26/1554092.html
總結
以上是生活随笔為你收集整理的C++和操作系统面试问题分类的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 利用U盘进行软件加密(转)
- 下一篇: asp.net(c#) static关键