第一篇:基于服務(wù)器網(wǎng)絡(luò)
1、物品準備
20臺安裝windows 2000 professional的計算機,一臺安裝windows 2000 server的計算機。21塊有RJ-45接口的網(wǎng)卡。傳輸介質(zhì)選擇雙絞線,準備21根做好的足夠長的直通雙絞線。連接設(shè)備選擇24口的集線器。
2、硬件安裝
將網(wǎng)卡插入PCI插槽。將集線器放在安全、穩(wěn)定的地方,取一根做好的雙絞線,為了便于查找,用標簽標上要了解的機器編號,把標簽貼在做好的雙絞線上,將雙絞線的一頭插入要連接的機器網(wǎng)卡的RJ-45插口上,另一頭插入集線器的一個端口上,安裝windows 2000 server的計算機要連接在集線器的第一個端口上。
3、安裝網(wǎng)卡及驅(qū)動程序
對于非即插即用型網(wǎng)卡,打開控制面板→添加/刪除硬件→添加/刪除硬件向?qū)А乱徊?。從列表中選中硬件 然后點擊下一步從光驅(qū)或者從磁盤安裝網(wǎng)卡驅(qū)動程序。對于即插即用型網(wǎng)卡,鼠標右擊“我的電腦”,在彈出的快捷菜單中選擇“屬性”命令,打開“系統(tǒng)特性”→硬件→設(shè)備管理器,可以看到“以太網(wǎng)控制器”前面有一個?號,雙擊“以太網(wǎng)控制器”,打開“以太網(wǎng)控制器”屬性窗口。單擊“重新安裝驅(qū)動程序”,跟隨向?qū)О惭b完驅(qū)動程序,重啟計算機。
4、配置
㈠服務(wù)器的設(shè)置
重新啟動系統(tǒng)后,以超級用戶登錄,進入后,運行“開始/程序/管理工具/配置服務(wù)器”程序
(1)活動目錄的配置(Active Directory)
活動目錄是管理的基礎(chǔ),只有配置了目錄服務(wù)之后管理員才能對帳號、組進行設(shè)置和管理。在“Windows 2000配置你的服務(wù)器”窗口中,啟動“Active Directory向?qū)А辈⒏鶕?jù)向?qū)б来卧O(shè)置:選擇“創(chuàng)建一個新的域目錄樹”→輸入“新域的DNS全名”如:mdgz.edu.cn →輸入“域NetBIOS名” 如: NDNX →設(shè)置“數(shù)據(jù)庫和日志文件位置”,可按缺省路徑設(shè)定→保持共享系統(tǒng)卷位置不變→選擇“是,在這臺計算機上安裝和配置DNS” →選擇“只與Windows 2000服務(wù)器相兼容的權(quán)限” →輸入目錄服務(wù)恢復(fù)模式的管理員密碼→出現(xiàn)摘要信息,確認正常,那么系統(tǒng)將根據(jù)你的選擇,花幾分鐘時間配置Active Directory,安裝結(jié)束,重新啟動則活動目錄即建立完畢。
(2)域名服務(wù)器DNS的配置
單擊“開始”→“管理工具”→“配置服務(wù)器”→“聯(lián)網(wǎng)” →“DNS” →“管理DNS” →啟動“DNS”管理界面。
單擊“操作“菜單下的命令“連接到計算機”,選定“這臺計算機”和“立即連接到指定的計算機”,然后“確定”,此進服務(wù)器機器名出現(xiàn)在管理窗口中。在“正向搜索區(qū)域”中右擊mdgz.edu.cn時,在彈出菜單中選擇“新建域”命令并輸入域名 如:NDNX,然后再右擊NDNX并選擇“新建主機”命令出現(xiàn)“新建主機”對話框,依次輸入主機名稱和IP地址,主機名稱為004km.cn(用于文件傳送)mail.mdgz.edu.cn(用于內(nèi)部電子附件系統(tǒng))、news.mdgz.edu.cn(用于內(nèi)部新聞組)。(3)DCHP服務(wù)器的配置
若在工作站人為指定IP地址,則不用配置DCHP服務(wù)器。
若要為工作站動態(tài)分配IP地址,則必需配置。啟動“管理工具”中的“DCHP”,在DCHP服務(wù)器配置界面中右擊服務(wù)器名,選擇“新建作用域”命令,根據(jù)向?qū)В来屋斎朊Q→IP地址范圍(如192.168.0.100至192.168.0.200)→輸入不想提供給DCHP客房端用使用的IP地址→IP地址租用期限→選擇“是我想現(xiàn)在配置這些選項”→輸入默認網(wǎng)關(guān)的IP地址→輸入子域名和服務(wù)器名→單擊“解析”按鈕→單擊“添加”,出現(xiàn)選擇WINS服務(wù)器,輸入服務(wù)器名稱→單擊“解析”按鈕→選擇“是,我想現(xiàn)在激活此作用域”即可完成配置。
㈡客戶機配置
安裝與配置TCP/IP協(xié)議
安裝網(wǎng)卡驅(qū)動程序后,系統(tǒng)自動添加TCP/IP協(xié)議、microsoft客戶端、microsoft網(wǎng)絡(luò)文件與打印機共享,只需要對TCP/IP協(xié)議進行配置即可。打開TCP/IP協(xié)議對話框,客戶機的ip地址配置為自動獲取ip地址。
5、設(shè)置網(wǎng)絡(luò)標識 為每一臺計算機取不同的名字student1~student21。工作組名稱為“student”。
6、設(shè)置本機共享文件
打開“我的電腦”雙擊“本地磁盤C:”,右擊C盤上的某一文件夾,在彈出的快捷菜單中選擇“共享”,在打開的屬性對話框中選共享頁,選中“共享該文件夾”,設(shè)定可訪問的用戶數(shù)目。
7、設(shè)置共享權(quán)限
在共享文件夾的屬性對話框中選中“權(quán)限”按鈕,設(shè)定網(wǎng)絡(luò)中的其它計算機對該共享文件夾有何種操作權(quán)限,如完全控制、更改、讀取等。
第二篇:機房(監(jiān)控、服務(wù)器及網(wǎng)絡(luò))管理制度(精選)
機房(監(jiān)控、服務(wù)器及網(wǎng)絡(luò))管理制度
第一章
總則
為保證機房設(shè)備與信息的安全,保障機房有個良好地運行環(huán)境和工作秩序,特制定本制度。
一、為確保機房安全,根據(jù)崗位職責(zé)設(shè)立機房管理員,負責(zé)對機房內(nèi)各類設(shè)備、軟件系統(tǒng)進行維護和管理。
二、管理員應(yīng)認真、定期對機房內(nèi)各類設(shè)備進行檢查和維護,及時發(fā)現(xiàn)、報告、解決軟、硬件出現(xiàn)的故障,保證系統(tǒng)的正常運行。
三、管理員須制定計算機IP地址分配表,公司網(wǎng)絡(luò)拓撲結(jié)構(gòu)圖和機房設(shè)備運行記錄表,給每個交換機端口編上號碼,以便操作和維護。機房管理員須經(jīng)常注意機房內(nèi)溫度、電壓等參數(shù),并做好記錄;發(fā)現(xiàn)異常及時采取相應(yīng)措施。
四、機房內(nèi)服務(wù)器、網(wǎng)絡(luò)設(shè)備、監(jiān)控、UPS電源等重要設(shè)施由專人嚴格按照規(guī)定操作,嚴禁隨意開關(guān),系統(tǒng)管理員的操作嚴格按照操作規(guī)范進行,任何人不得擅自更改系統(tǒng)設(shè)置。
五、嚴格遵守保密制度,數(shù)據(jù)資料和軟件必須專人負責(zé)保管,未經(jīng)允許不得私自拷貝、下載和外借。
第二章 監(jiān)控管理
一、認真學(xué)習(xí)監(jiān)控的操作規(guī)程,維護和保養(yǎng)好監(jiān)控設(shè)備。保持圖像信息畫面清晰,保證系統(tǒng)正常運行。
二、監(jiān)控系統(tǒng)圖像實行自動保存,圖像保存時間不少于30天。
三、外來單位人員需要查看監(jiān)控圖像需要領(lǐng)導(dǎo)批準,填寫監(jiān)控信息圖像查看記錄表,對圖像信息錄制人員、調(diào)取用途等事項進行登記。
四、任何人不得擅自復(fù)制、查詢或者向其他單位和個人提供、傳播圖像信息。
五、任何人不得擅自刪除、修改監(jiān)控系統(tǒng)的運行程序和記錄。
六、任何人不得擅自改變公共安全圖像信息系統(tǒng)的用途和攝像設(shè)備的位置。
七、任何人不得干擾、妨礙監(jiān)控系統(tǒng)的正常運行。
八、工作人員使用計算機要及時主動設(shè)置密碼。
九、嚴禁將監(jiān)控密碼告知無關(guān)人員。
十、未經(jīng)相關(guān)領(lǐng)導(dǎo)批準,任何人員不得將公司的數(shù)據(jù)、軟件及資料復(fù)制給其他單位或個人。
十一、未經(jīng)公司許可,公司以外任何人員不得使用操作監(jiān)控計算機系統(tǒng)及相關(guān)設(shè)備。
十二、任何人不得擅自提供、傳播圖像信息。
十三、對涉及公司秘密、商業(yè)秘密和員工個人隱私的圖像予以保密。
第三章 網(wǎng)絡(luò)設(shè)備的管理
一、路由器、交換機和服務(wù)器以、及通信設(shè)備是網(wǎng)絡(luò)的關(guān)鍵設(shè)備,須放置計算機機房內(nèi),不得自行配置或更換,更不能挪作它用。
二、嚴禁易燃易爆和強磁物品及其它與機房工作無關(guān)的物品進入機房。
三、建立機房登記制度,時刻注意網(wǎng)絡(luò)運行情況。未發(fā)生故障或故障隱患時當(dāng)班人員不可對任何設(shè)備進行任何調(diào)試,對所發(fā)生的故障、處理過程和結(jié)果等做好詳細登記。
四、各種帳號嚴格保密。不得泄露給其他無關(guān)人員。
五、網(wǎng)絡(luò)管理人員應(yīng)有較強的病毒防范意識,定期進行病毒檢測,發(fā)現(xiàn)病毒立即處理并
通知管理部門或?qū)B毴藛T。
六、采用國家許可的正版防病毒軟件并及時更新軟件版本。
七、未經(jīng)許可,任何部門和個人不得隨意增加或去除網(wǎng)絡(luò)設(shè)備,做到設(shè)備有記錄。
第四章 服務(wù)器的管理
一、目的在于用友服務(wù)器和財貿(mào)通服務(wù)器的使用,包括服務(wù)器的放置、口令管理、操作管理等。
二、服務(wù)器統(tǒng)一放置在公司機房,禁止搬出。
三、禁止私自對服務(wù)器硬件拆裝,如需升級硬件需申請得到批準后方可執(zhí)行。
四、服務(wù)器口令由管理員保管;口令修改后,必需到辦公室備案。
五、每天應(yīng)檢查備份文件的完整性,填寫《服務(wù)器數(shù)據(jù)備份及檢查記錄》。;涉及企業(yè)秘密的備份媒體,只有授權(quán)的人員才可以訪問,并保存在上鎖的文件柜或其他安全儲存場所。
六、管理員負責(zé)服務(wù)器操作配置,其他人員禁止操作。如需對服務(wù)器做重大操作,需提前做數(shù)據(jù)備份。
七、每月對服務(wù)器硬件做評估,保障服務(wù)器以最佳狀態(tài)工作。如發(fā)現(xiàn)有硬件問題及時上報。
第五章 機房應(yīng)急預(yù)案
為確保公司機房安全與穩(wěn)定,以保證正常運行為宗旨,按照“預(yù)防為主,積極處置”的原則,本著建立一個有效處置突發(fā)事件,建立統(tǒng)一指揮、職責(zé)明確運轉(zhuǎn)有序、反應(yīng)迅速處置有力的機房安全體系的目標,特制定本預(yù)案。
一、機房突發(fā)事件應(yīng)急處置方案
1、電源系統(tǒng)應(yīng)急預(yù)案
(1)定期檢查機房供電設(shè)備的運行狀況和電路線纜器材情況,當(dāng)發(fā)生下列突發(fā)事件時,按照以下方案進行處置:
(2)當(dāng)機房發(fā)生市電供電突然停電或是電源異常時。首先應(yīng)和供電局聯(lián)系確認正常停電以及預(yù)計停電時間。檢查不間斷電源的電池可供電時間,確保設(shè)備正常運行,如遇到突然斷電,應(yīng)及時將不在UPS電源供電范圍內(nèi)的設(shè)備及時斷電,預(yù)防突然來電時瞬間電流過大導(dǎo)致設(shè)備損壞等現(xiàn)象。
(3)當(dāng)確定停電時間超出機房UPS承載范圍后,首先確定停電的范圍以及受影響的設(shè)備范圍。并及時通知各部門和支公司營銷部做好停電應(yīng)急準備。然后通知機房電源維護人和設(shè)備的負責(zé)人到達現(xiàn)場,做好各設(shè)備的電源停電準備。在UPS供電電量僅剩10%之后,嚴格按操作手冊停掉各服務(wù)器的電源,最后停核心交換機和路由器,等待電力恢復(fù)。
(4)當(dāng)確定停電原因是在本身供電系統(tǒng)范圍內(nèi),立即匯報給負責(zé)領(lǐng)導(dǎo),并及時聯(lián)系相關(guān)維護人員達到現(xiàn)場檢修。對于恢復(fù)時間無法預(yù)計的,要通知各個部門做好準備工作。
(5)恢復(fù)供電后,嚴格按照操作程序逐步恢復(fù)機房設(shè)備和UPS的供電,以防瞬間電流過大造成設(shè)備損壞。
2、網(wǎng)絡(luò)和服務(wù)器絡(luò)系統(tǒng)應(yīng)急預(yù)案
(1)發(fā)生網(wǎng)絡(luò)故障時,首先檢查機房設(shè)備情況,確定網(wǎng)絡(luò)故障的原因。
(2)確認原因后,聯(lián)系相關(guān)人員,及時處理和排除故障。
(3)當(dāng)確認原因為短時間無法恢復(fù),應(yīng)該及時向負責(zé)領(lǐng)導(dǎo)匯報,然后通知各部門做好應(yīng)急準備。然后及時處理故障。
(4)當(dāng)人為或病毒破壞的故障發(fā)生時,具體按以下順序進行:判斷破壞的來源及性質(zhì),斷開影響安全與穩(wěn)定的信息網(wǎng)絡(luò)設(shè)備,斷開與破壞來源的物理網(wǎng)絡(luò)連接,跟蹤并鎖定破壞的來源和其他網(wǎng)絡(luò)用戶信息,修復(fù)被破壞的信息,恢復(fù)系統(tǒng)。
(5)發(fā)生服務(wù)器系統(tǒng)故障后,應(yīng)立即向相關(guān)領(lǐng)導(dǎo)匯報情況,及時組織啟動備用服務(wù)器系統(tǒng),由備用服務(wù)器接管相關(guān)業(yè)務(wù)應(yīng)用,同時安排人員將故障服務(wù)器脫離網(wǎng)絡(luò),保存系統(tǒng)狀態(tài)不變,保護原始數(shù)據(jù)。
在確認安全的情況下,重新啟動故障服務(wù)系統(tǒng):若重啟系統(tǒng)成功,則檢查數(shù)據(jù)丟失情況,利用備份數(shù)據(jù)恢復(fù);若重遇到自己無法解決的故障,應(yīng)立即請求技術(shù)支持,做好技術(shù)處理。
處置結(jié)束后,管理員應(yīng)將處理過程記錄下來,以方便日后對此問題的處理。
3、消防和防雷應(yīng)急預(yù)案
(1)上班工作時間發(fā)生火警,還在機房工作的人員應(yīng)及時緊急撤離,并立刻撥打119報警。在確保自身安全的情況下,應(yīng)盡量使用滅火器進行滅火,減少電子設(shè)備的損壞。同時采取關(guān)閉電源總閘等措施,盡量減少可能造成的損失和破壞。
(2)非工作時間或節(jié)假日休息時間值班人員發(fā)現(xiàn)火情后,要立刻撥打119報警,并立刻通知相關(guān)部門和領(lǐng)導(dǎo),做好火災(zāi)的處置工作。
(3)火情結(jié)束之后,機房相關(guān)人員應(yīng)全體趕赴現(xiàn)場,并向公司相關(guān)部門匯報。同時立即聯(lián)系相關(guān)網(wǎng)絡(luò)公司和設(shè)備相關(guān)廠家,及時評估事故損失情況,研討恢復(fù)網(wǎng)絡(luò)系統(tǒng)正常運行的最佳解決方案。
(4)遇雷暴天氣或接上級部門雷暴氣象預(yù)警,應(yīng)關(guān)閉所有服務(wù)器,切斷電源,暫停內(nèi)部計算機網(wǎng)絡(luò)工作。雷暴天氣結(jié)束后,及時開通服務(wù)器,恢復(fù)內(nèi)部計算機網(wǎng)絡(luò)工作。因雷擊造成的損失,應(yīng)及時進行核實、報損,并將詳細情況向部門領(lǐng)導(dǎo)匯報。
4、自然災(zāi)害和盜搶應(yīng)急預(yù)案
(1)發(fā)生自然災(zāi)害后,首先應(yīng)該組織人員撤離現(xiàn)場。當(dāng)確認災(zāi)害不會造成人生傷害后,在回到機房檢查設(shè)備,立刻向上級領(lǐng)導(dǎo)匯報,并聯(lián)系相關(guān)網(wǎng)絡(luò)和設(shè)備廠家,積極做好災(zāi)后恢復(fù)工作,確保在最短時間內(nèi)恢復(fù)機房正常運行。
(2)發(fā)生盜搶事件后,要保護好現(xiàn)場然后報警,并向領(lǐng)導(dǎo)和省公司匯報情況。待現(xiàn)場處理完畢后,要組織相關(guān)人員估計損毀情況,并聯(lián)系相關(guān)網(wǎng)絡(luò)和設(shè)備廠家,積極做好恢復(fù)工作。
第三篇:中央財經(jīng)大學(xué)服務(wù)器托管協(xié)議-中央財經(jīng)大學(xué)網(wǎng)絡(luò)信息中心
中央財經(jīng)大學(xué)服務(wù)器托管協(xié)議
甲方:
乙方:中央財經(jīng)大學(xué)網(wǎng)絡(luò)信息中心
中央財經(jīng)大學(xué)網(wǎng)絡(luò)信息中心(以下簡稱乙方)為_______(以下簡稱甲方)提供服務(wù)器托管服務(wù),為明確職責(zé),規(guī)范管理,雙方簽定此協(xié)議。
1.雙方共同遵守《中央財經(jīng)大學(xué)托管服務(wù)器管理辦法》。
2.乙方為托管服務(wù)器提供良好的機房環(huán)境,確保供電、制冷和網(wǎng)絡(luò)的正常,確保硬件本身的安全。
3.甲方擁有被托管服務(wù)器的產(chǎn)權(quán)和管理使用權(quán),甲方自行管理其托管服務(wù)器的操作系統(tǒng)、業(yè)務(wù)系統(tǒng)及相關(guān)數(shù)據(jù)。甲方負責(zé)服務(wù)器上數(shù)據(jù)的完整性和保密性,對所管理的信息及數(shù)據(jù)進行備份,指定專人保管賬號并定期更換密碼,如因服務(wù)器升級、感染病毒、服務(wù)器硬件損壞、賬號密碼泄露、違規(guī)操作等引起的各種問題及產(chǎn)生的一切后果,由甲方承擔(dān)。
4.甲方自行解決服務(wù)器上所需軟件的版權(quán)(許可/使用權(quán)),對軟件版權(quán)所引發(fā)的糾紛負全部責(zé)任。
5.甲方所發(fā)布的信息必須符合國家的有關(guān)法律、法規(guī),以及學(xué)校和上級管理部門制定的相關(guān)規(guī)定。甲方對所發(fā)布的信息負政治責(zé)任、法律責(zé)任、經(jīng)濟責(zé)任以及其它責(zé)任。
6.被托管服務(wù)器不得運行申請內(nèi)容之外的服務(wù),否則乙方有權(quán)暫停該服務(wù)器運行,經(jīng)整改后方可恢復(fù)運行。
7.被托管服務(wù)器因設(shè)備故障、服務(wù)器中毒、受到網(wǎng)絡(luò)攻擊等危害到其他系統(tǒng)穩(wěn)定和安全或影響到校園網(wǎng)正常運行等緊急情況下,乙方可立即暫停托管服務(wù)器的運行并通知甲方進行相應(yīng)的處理。
8.托管服務(wù)器在托管期間如出現(xiàn)硬件或軟件故障,硬件的維修、更新以及軟件故障的排查處置,由甲方完全負責(zé),乙方提供必要的便利和配合。
9.因不可抗力、外部供電故障、ISP問題、校園網(wǎng)其他故障而造成的損失,乙方不承擔(dān)責(zé)任。
甲方:
(蓋章)
乙方:網(wǎng)絡(luò)信息中心(蓋章)
甲方負責(zé)人:
(簽字)
乙方負責(zé)人:
(簽字)
****年**月**日
****年**月**日
第四篇:審計局服務(wù)器防火墻網(wǎng)絡(luò)外包合同 - 副本專題
服務(wù)器防火墻外包服務(wù)同書
甲方(需方):故道平安審計局
乙方(供方):故道平安城關(guān)玉娥電子經(jīng)營部
甲乙雙方經(jīng)過友好協(xié)商,依據(jù)《中華人民共和國合同法》,雙方同意簽訂以下合同條款,以便雙方共同遵守,履行合同。
一、雙方責(zé)任 甲方責(zé)任:
1、提供必要的硬件資源。
2對于上門服務(wù)應(yīng)提供必要的工作環(huán)境。
3、提供必要的IT管理權(quán)限。1)帳號管理權(quán)限 2)數(shù)據(jù)庫管理權(quán)限 3)數(shù)據(jù)備份權(quán)限 4)防火墻管理權(quán)限 乙方責(zé)任:
乙方通過不斷的技術(shù)積累,為甲方提供穩(wěn)定、安全、與時俱進的網(wǎng)絡(luò)環(huán)境,讓甲方網(wǎng)絡(luò)始終運行良好、穩(wěn)定、高效。安全。
1、原則上對于常規(guī)的帳號管理、服務(wù)器維護、網(wǎng)絡(luò)設(shè)備維護、數(shù)據(jù)備份、防火墻規(guī)則制定、網(wǎng)站維護、內(nèi)外部郵件系統(tǒng)維護都通過遠程管理的方式完成;對于硬件故障和其他必須在現(xiàn)場解決的問題都通過上門服務(wù)的方式完成。
2、保障客戶網(wǎng)絡(luò)的連通性。
3、保障服務(wù)器及所有服務(wù)的有效性安全性
4、保障客戶機系統(tǒng)和常用辦公軟件可用性。
5、建立嚴格的防火墻,執(zhí)行入侵檢測,病毒查殺。
6、對于乙方提供的OA、ERP、CRM、WORKFLOW等應(yīng)用系統(tǒng)提供必要的客戶培訓(xùn)。
7、提供 7×8小時電話支持,7×8 小時在線支持。
8、按照附件2中的保密協(xié)議,嚴格保障客戶資料和數(shù)據(jù)的安全。
三、違約責(zé)任
1、如因甲方原因(如未按要求提供相應(yīng)的服務(wù)器硬件平臺,付款不及時等)造成用戶爭議,由甲方負責(zé)。
2、如因乙方原因造成服務(wù)中斷或不及時,由乙方負責(zé)。
四、免責(zé)條件
1、因電信部門檢修等原因造成服務(wù)中斷的,雙方互不承擔(dān)責(zé)任。
2、因國家政策法規(guī)調(diào)整、自然災(zāi)害等不可抗力造成的服務(wù)中斷,雙方互不承擔(dān)責(zé)任。
五、維護內(nèi)容
1、甲方就單位網(wǎng)絡(luò)服務(wù)器、防火墻、交換機、路由器、機柜、線路等交付乙方進行維護。
維護要求:甲方設(shè)備出現(xiàn)故障后在1小時到達甲方單位,進行維護,須提供備件,保障甲方設(shè)備正常運行。
六、費用結(jié)算
甲方向乙方支付維護費
元。付款方式:轉(zhuǎn)賬。合同簽訂后甲方向乙方支付合同總金額的100%即
元。(¥00元)。
五、服務(wù)地點:故道平安審計局
本合同一式兩份,甲乙雙方各執(zhí)一份。本合同自簽訂之日起生效。其他未盡事宜,由雙方友好協(xié)商解決,并參照《中華人民共和國合同法》有關(guān)條款執(zhí)行。
甲方(印章)
乙方(印章)甲方(簽字)
乙方(簽字)
時間:
年
月 日
時間:
****年**月**日
第五篇:C++ 面試題(服務(wù)器編程、網(wǎng)絡(luò)編程方便)
C++ 面試題-專注于服務(wù)器編程、網(wǎng)絡(luò)編程 C++ 面試題
1.類成員指針
Class test
{
Public:
Int fun(int)const;
Int fun(int);
Static int fun(int);
Int iTemp;
}
1.1非靜態(tài)成員函數(shù)指針定義:
int(Test::*pFun)(int)= &Test::fun;
int(Test::*pFunConst)(int)const = &Test::fun;
使用:
Test a;
const Test b;
(a.*pFun)(2)或(a.*pFunConst)(2);
(b.*pFunConst)(2);
不能用(b.*pFun)(2);
1.2非靜態(tài)成員變量int Test::*pInt = &Test::iTemp;
(a.*pInt)= 3;
1.3靜態(tài)成員函數(shù)指針int(*pFun)()= &Test::fun;
或 int(*pFun)()= Test::fun;都正確;(注:定義無域操作符)使用:
(*pFun)()或 pFun()都正確;
2.非成員函數(shù)指針和靜態(tài)成員函數(shù)一致。
3.非成員函數(shù)和靜態(tài)成員函數(shù)上不允許修飾符。例如 void fun()const;void fun()volatile;但非靜態(tài) 成員函數(shù)允許const、volatile等修飾符。
4.變量修飾符
auto:指定數(shù)據(jù)存儲在棧中。局部變量默認為auto。該修飾符不能用于成員變量和全局變量。
static: 局部變量表示存儲在靜態(tài)空間,全局變量表示不允許外部引用。
volatile:表示該變量可能隨時改變,不要做任何假設(shè)優(yōu)化。
mutale: 去除成員變量的const屬性。
extern:全局變量默認為extern屬性,表示可被外部引用,此時與static相對。
extern int a =2;表示定義一個可被外部引用的變量。
extern int a;表示引用外部變量。
5.數(shù)據(jù)類型隱式轉(zhuǎn)換
短數(shù)據(jù)->長數(shù)據(jù)(eg: float-> double)
有符號->無符號(eg: int-> unsigned int)PS: 所以 int(-1)>unsigned int(1);
低精度->高精度(eg: int-> float)
6.memcpy 有“防重疊”覆蓋機制,strcpy 沒有。
7.float表示
共計32位,折合4字節(jié)
由最高到最低位分別是第31、30、29、……、0位
31位是 符號位,1表示該數(shù)為負,0反之。
30-23位,一共8位是指數(shù)位。
22-0位,一共23位是尾數(shù)位。
每 8位分為一組,分成4組,分別是A組、B組、C組、D組。
每一組是一個字節(jié),在內(nèi)存中逆序存儲,即:DCBA
8.不能在類的聲明中初始化類常量,而只能在構(gòu)造函數(shù)初始化列表來初始化
9.類中的枚舉常量不占用對象的存儲空間
10.有時候函數(shù)原本不需要返回值,但為了增加靈活性如支持鏈式表達,可以附加返回值。
11.賦值函數(shù),應(yīng)當(dāng)用“引用傳遞”的方式返回String 對象。如果用“值傳遞”的方式,雖然功能仍然正確,但由于return 語句要把 *this 拷貝到保存返回值的外部存儲單元之中,增加了不必要的開銷,降低了賦值函數(shù)的效率。
12.對于非內(nèi)部數(shù)據(jù)類型的對象而言,光用maloc/free 無法滿足動態(tài)對象的要求。對象在創(chuàng)建的同時要自動執(zhí)行構(gòu)造函數(shù),對象在消亡之前要自動執(zhí)行析構(gòu)函數(shù)。如果用free 釋放“new 創(chuàng)建的動態(tài)對象”,那么該對象因無法執(zhí)行析構(gòu)函數(shù)而可能導(dǎo)致程序出錯。如果用delete 釋放“malloc 申請的動態(tài)內(nèi)存”,理論上講程序不會出錯,但是該程序的可讀性很差。
13.如果用new 創(chuàng)建對象數(shù)組,那么只能使用對象的無參數(shù)構(gòu)造函數(shù),delete時如果對象沒有析構(gòu)函數(shù),則delete和delete[]是功能相同的。
14.只能靠參數(shù)而不能靠返回值類型的不同來區(qū)分重載函數(shù)。編譯器根據(jù)參數(shù)為每個重載函數(shù)產(chǎn)生不同的內(nèi)部標識符。并不是兩個函數(shù)的名字相同就能構(gòu)成重載。全局函 數(shù)和類的成員函數(shù)同名不算重載,因為函數(shù)的作用域不同。
15.關(guān)鍵字inline
必須與函數(shù)定義體放在一起才能使函數(shù)成為內(nèi)聯(lián),僅將inline 放在函數(shù)聲明前面不起任何作用。定義在類聲明之中的成員函數(shù)將自動地成為內(nèi)聯(lián)函數(shù)。
以下情況不宜使用內(nèi)聯(lián):
(1)如果函數(shù)體內(nèi)的代碼比較長,使用內(nèi)聯(lián)將導(dǎo)致內(nèi)存消耗代價較高。
(2)如果函數(shù)體 內(nèi)出現(xiàn)循環(huán),那么執(zhí)行函數(shù)體內(nèi)代碼的時間要比函數(shù)調(diào)用的開銷大。
16.只有靜態(tài)常量整型數(shù)據(jù)成員才可以在類中初始化,普通成員只能在初始化列表或函數(shù)內(nèi)初始化,常量成員只能在初始化列表。成員對象初始化的次序完全不受它們在 初始化表中次序的影響,只由成員對象在類中聲明的次序決定。
17.拷貝構(gòu)造函數(shù)和賦值函數(shù)非常容易混淆,常導(dǎo)致錯寫、錯用??截悩?gòu)造函數(shù)是在對象被創(chuàng)建時調(diào)用的,而賦值函數(shù)只能被已經(jīng)存在了的對象調(diào)用。
18.不想編寫拷貝構(gòu)造函數(shù)和賦值函數(shù),又不允許別人使用編譯器生成的,則只需將拷貝構(gòu)造函數(shù)和賦值函數(shù)聲明為私有函數(shù),不用編寫代碼。
19.“const T”和“T const”總是都被允許的,而且是等效的。
注意在常量指針(const pointer)中,“const”永遠出現(xiàn)在“*”之后。
例如:
int *const p1 = q;//指向int 變量的常量指針
int const* p2 = q;//指向int 常量的指針
const int* p3 = q;//指向int 常量的指針
20.一個常見的微妙問題是,一個函數(shù)風(fēng)格的宏并不遵守函數(shù)參數(shù)傳遞的規(guī)則。
21.沒有引用數(shù)組,但可有指向數(shù)組的引用,并且保留數(shù)組的邊界。
22.左值擁有保存值的位置,而右值則沒有相關(guān)地址,只是簡單值。
23.負索引是可以的,如p[-2]或(-2)[p]都是可以的(p必然不能是數(shù)組名),但必須保持不越界。
sum=p()+q()+r();不能保證p(),q(),r()調(diào)用的順序。
逗號運算符“,”可以保證求值順序.result=(p(),q(),r());是先求p(),q(),然后將r()賦給result
24.在if的條件里聲明變量,且可在真假分支里面使用。
const int * const * p;p是個指針,指向常指針的,常指針指向一個常量int。
25.不能用空白初始化列表來規(guī)定默認的對象初始化.class a;
a A();//會警告,看起來像函數(shù)聲明
a *p=new a();//ok
a *p=new a;//ok
26.可以寫一句只有數(shù)字的代碼,如1234;(void)0;可以編譯執(zhí)行,相當(dāng)于nop。
27.給函數(shù)指針賦值時可以對函數(shù)名取地址也可以不取,通過函數(shù)指針調(diào)用函數(shù)時可以用*也可不用。
28.static_cast可以轉(zhuǎn)換基本數(shù)據(jù)類型(int->char)、void*和有類型指針、基類和派生類指針的轉(zhuǎn)換(多重繼承也行,它可重新計算偏移地址),但是不能轉(zhuǎn)換如(int*->char*等)。
29.dynamic_cast主要用于執(zhí)行“安全的向下轉(zhuǎn)型”,reinterpret_cast可執(zhí)行任何轉(zhuǎn)換,const_cast執(zhí)行去 const轉(zhuǎn)換。
30.將取地址運算符用到完全限定的類成員名(包括變量和函數(shù)),就能獲得指向成員的地址。使用形式為“X::*”來聲明一個指向類X成員的指針。注意聲明成員 函數(shù)指針的時候不能像普通函數(shù)指針可以省略&或*的使用,但靜態(tài)成員函數(shù)則除外,它和普通函數(shù)一致。成員指針和普通指針不一樣,并非指向一個內(nèi)存 區(qū)域,而是相當(dāng)于一個結(jié)構(gòu)的偏移量,當(dāng)它和具體的對象結(jié)合就能指向特定對象的特定成員。
31.當(dāng)把派生類對象賦給基類對象的時候會產(chǎn)生切割現(xiàn)象,即針對派生類的數(shù)據(jù)和行為將產(chǎn)生切割。
32.多維數(shù)組的第1個元素是數(shù)組而非普通類型。
33.在含有單參數(shù)構(gòu)造函數(shù)的類中注意隱式轉(zhuǎn)換。如String s=“Hello”;
34.函數(shù)對象是重載函數(shù)調(diào)用運算符的類對象。
35.引用需要用左值進行初始化,但指向常量的引用除外,編譯器將創(chuàng)建一個臨時左值。如const int c=12;//ok 一般情況下編譯器產(chǎn)生的臨時對象的生命期在它所在的最大表達式范圍內(nèi),但用臨時對象初始化常量對象的引用時會讓編譯器保證臨時對象和引用生命周期一樣。
36.可以將基類的成員指針(變量或函數(shù))安全的轉(zhuǎn)換為指向派生類成員的指針,但反之則不安全。
37.函數(shù)參數(shù)的傳遞是采用拷貝構(gòu)造函數(shù)而非賦值操作。對未初始化的對象賦值可能會出現(xiàn)意外,如類中含有未初始化指針。
38.聲明但不定義私有的拷貝構(gòu)造和賦值運算將會關(guān)閉類的復(fù)制操作。并且賦值運算、拷貝構(gòu)造函數(shù)和析構(gòu)函數(shù)不會被繼承,對派生類重載賦值運算時需要調(diào)用基類的賦 值運算。
39.在構(gòu)造函數(shù)里對成員變量初始化,比較好的方式是使用初始化列表。在初始化列表中靜態(tài)成員和數(shù)組不能被初始化。
類的初始化順序是虛擬基類的成員->非虛基類成員->類自身成員,和初始化列表的順序無關(guān)。含有虛擬基類和不含的類在成員布局上不一樣,含有虛擬基類的類將虛擬基類的數(shù)據(jù)放在最后面。另外如B:virtual A,C:virtual A,D:B,C;(均是虛繼承)則D的構(gòu)造函數(shù)將對A初始化一次(即使在初始化列表沒有顯式初始化A),B,C將不再對A初始化。
所有靜態(tài)數(shù)據(jù)(全局變量和靜態(tài)存儲變量)在使用前如未初始化其值都為0.全局變量可以存儲在靜態(tài)初始化區(qū)和未初始化區(qū)。
40.RVO返回值優(yōu)化,是指在函數(shù)返回中執(zhí)行拷貝初始化到直接初始化(使用帶非對象參數(shù)的構(gòu)造函數(shù))的轉(zhuǎn)換,NRV和RVO類似,但使用命名局部變量來保存返 回值。p160
41.重載、覆蓋和隱藏的區(qū)別
重載的特征:在同一個類,函數(shù)名相同,參數(shù)不同,virtual可有可無。
覆蓋的特征:在兩個類(基類和派生類),函數(shù)名和參數(shù)都相同,且必須有virtual關(guān)鍵字。
隱藏的特征:基類函數(shù)名和派生類函數(shù)名相同參數(shù)不同,且不管是否有關(guān)鍵字?;蚝瘮?shù)名、參數(shù)均相同,但基類 函數(shù)沒有virtual(有的話就是覆蓋)。
不能覆蓋而只能隱藏基類非虛函數(shù)。
42.相同類型的所有對象公用一個虛函數(shù)表,在單繼承下不管有多少個虛函數(shù)都只有一個虛函數(shù)表指針。覆蓋就是在為派生類構(gòu)造虛函數(shù)表時用派生類的函數(shù)地址替換基 類成員函數(shù)地址的過程。
43.使用常量類成員可能在對類對象賦值的時候產(chǎn)生問題。
44.有時候我們可能會看到 if(NULL == p)這樣古怪的格式。不是程序?qū)戝e了,是程序員為了防止將 if(p == NULL)誤寫成 if(p = NULL),而有意把p 和NULL 顛倒。