19.MFC中CString是類(lèi)型安全類(lèi)么? 20.C++中為什么用模板類(lèi)。 21.CSingleLock是干什么的。 22.NEWTEXTMETRIC 是什么。 23.程序什么時(shí)候應該使用線(xiàn)程,什么時(shí)候單線(xiàn)程效率高。 24.Windows是內核級線(xiàn)程么。 25.Linux有內核級線(xiàn)程么。 26.C++中什么數據分配在;蚨阎,New分配數據分配在近堆、遠堆中。 27.使用線(xiàn)程是如何防止出現大的波峰。 1函數模板與類(lèi)模板有什么區別? 2一般數據庫若出現日志滿(mǎn)了,會(huì )出現什么情況,是否還能使用? 3sql server是否支持行級鎖,有什么好處? 4如果數據庫滿(mǎn)了會(huì )出現什么情況,是否還能使用?
MFC中CString是類(lèi)型安全類(lèi)么? 答:不是,其它數據類(lèi)型轉換到CString可以使用CString的成員函數Format來(lái)轉換
C++中為什么用模板類(lèi)。 答:(1)可用來(lái)創(chuàng )建動(dòng)態(tài)增長(cháng)和減小的數據結構 (2)它是類(lèi)型無(wú)關(guān)的,因此具有很高的可復用性。 (3)它在編譯時(shí)而不是運行時(shí)檢查數據類(lèi)型,保證了類(lèi)型安全 (4)它是平臺無(wú)關(guān)的,可移植性 (5)可用于基本數據類(lèi)型
CSingleLock是干什么的。 答:同步多個(gè)線(xiàn)程對一個(gè)數據類(lèi)的同時(shí)訪(fǎng)問(wèn)
NEWTEXTMETRIC 是什么。 答:物理字體結構,用來(lái)設置字體的高寬大小
程序什么時(shí)候應該使用線(xiàn)程,什么時(shí)候單線(xiàn)程效率高。 答:1.耗時(shí)的操作使用線(xiàn)程,提高應用程序響應 2.并行操作時(shí)使用線(xiàn)程,如C/S架構的服務(wù)器端并發(fā)線(xiàn)程響應用戶(hù)的請求。 3.多CPU系統中,使用線(xiàn)程提高CPU利用率 4.改善程序結構。一個(gè)既長(cháng)又復雜的進(jìn)程可以考慮分為多個(gè)線(xiàn)程,成為幾個(gè)獨立或半獨 立的運行部分,這樣的程序會(huì )利于理解和修改。 其他情況都使用單線(xiàn)程。
Windows是內核級線(xiàn)程么。 Linux有內核級線(xiàn)程么。 答:線(xiàn)程通常被定義為一個(gè)進(jìn)程中代碼的不同執行路線(xiàn)。從實(shí)現方式上劃分,線(xiàn)程有兩 種類(lèi)型:“用戶(hù)級線(xiàn)程”和“內核級線(xiàn)程”。 用戶(hù)線(xiàn)程指不需要內核支持而在用戶(hù)程序 中實(shí)現的線(xiàn)程,其不依賴(lài)于操作系統核心,應用進(jìn)程利用線(xiàn)程庫提供創(chuàng )建、同步、調度 和管理線(xiàn)程的函數來(lái)控制用戶(hù)線(xiàn)程。這種線(xiàn)程甚至在象 DOS 這樣的操作系統中也可實(shí)現 ,但線(xiàn)程的調度需要用戶(hù)程序完成,這有些類(lèi)似 Windows 3.x 的協(xié)作式多任務(wù)。另外一 種則需要內核的參與,由內核完成線(xiàn)程的調度。其依賴(lài)于操作系統核心,由內核的內部 需求進(jìn)行創(chuàng )建和撤銷(xiāo),這兩種模型各有其好處和缺點(diǎn)。用戶(hù)線(xiàn)程不需要額外的內核開(kāi)支 ,并且用戶(hù)態(tài)線(xiàn)程的實(shí)現方式可以被定制或修改以適應特殊應用的要求,但是當一個(gè)線(xiàn) 程因 I/O 而處于等待狀態(tài)時(shí),整個(gè)進(jìn)程就會(huì )被調度程序切換為等待狀態(tài),其他線(xiàn)程得不 到運行的機會(huì );而內核線(xiàn)程則沒(méi)有各個(gè)限制,有利于發(fā)揮多處理器的并發(fā)優(yōu)勢,但卻占 用了更多的系統開(kāi)支。 Windows NT和OS/2支持內核線(xiàn)程。Linux 支持內核級的多線(xiàn)程
C++中什么數據分配在;蚨阎,New分配數據是在近堆還是遠堆中? 答:棧: 存放局部變量,函數調用參數,函數返回值,函數返回地址。由系統管理 堆: 程序運行時(shí)動(dòng)態(tài)申請,new 和 malloc申請的內存就在堆上
使用線(xiàn)程是如何防止出現大的波峰。 答:意思是如何防止同時(shí)產(chǎn)生大量的線(xiàn)程,方法是使用線(xiàn)程池,線(xiàn)程池具有可以同時(shí)提 高調度效率和限制資源使用的好處,線(xiàn)程池中的線(xiàn)程達到最大數時(shí),其他線(xiàn)程就會(huì )排隊 等候。
函數模板與類(lèi)模板有什么區別? 答:函數模板的實(shí)例化是由編譯程序在處理函數調用時(shí)自動(dòng)完成的,而類(lèi)模板的實(shí)例化 必須由程序員在程序中顯式地指定。
一般數據庫若出現日志滿(mǎn)了,會(huì )出現什么情況,是否還能使用? 答:只能執行查詢(xún)等讀操作,不能執行更改,備份等寫(xiě)操作,原因是任何寫(xiě)操作都要記 錄日志。也就是說(shuō)基本上處于不能使用的狀態(tài)。
SQL Server是否支持行級鎖,有什么好處? 答:支持,設立封鎖機制主要是為了對并發(fā)操作進(jìn)行控制,對干擾進(jìn)行封鎖,保證數據 的一致性和準確性,行級封鎖確保在用戶(hù)取得被更新的行到該行進(jìn)行更新這段時(shí)間內不 被其它用戶(hù)所修改。因而行級鎖即可保證數據的一致性又能提高數據操作的迸發(fā)性。
|