第一部分 目標與基本要求
目標
本課程培養學生使用C++進行面向對象的程序設計能力。要求考生掌握C++語言程序設計的基本概念、語法規則和面向對象的程序設計方法和思想,強調基礎性和綜合性。注重測試考生對相關的基本概念、思想和分析方法的理解,以及運用基本概念、基本思想,靈活分析和解決實際問題的能力。
基本要求
考試內容包括面向過程的程序設計和面向對象的程序設計。要求理解、掌握:C++基本數據類型和自定義數據類型以及算法的控制結構;函數的定義和使用;類的定義和使用;數據共享與保護的方法;數組指針和字符串的操作;繼承與派生;多態性;流類庫與輸入輸出;異常處理機制和方法。
第二部分 具體內容
數據類型與算法流程控制
(1) 了解整型、字符型、枚舉型等基本數據類型的概念,掌握這些類型的常量和變量的使用及其運算操作;
(2) 掌握關系運算符的使用和關系表達式的求值、邏輯運算符的使用和邏輯表達式的求值;
(3) 了解運算符的優先級和結合性,掌握數值表達式的構造方法;
(4) 掌握if語句和switch語句的使用;
(5) 掌握while,do…while和for這三種循環語句的結構和執行過程,掌握continue語句和break語句的使用。
函數
(1) 掌握函數的定義和調用、函數的參數傳遞;
(2) 理解內聯函數的使用;
(3) 掌握全局變量和局部變量的使用;
(4) 掌握函數重載的方法。
類與對象
(1) 掌握類的定義、類成員的訪問控制;
(2) 掌握構造函數和析構函數的調用;
(3) 理解類的組合。
數據的共享與保護
(1) 理解標識符的作用域與可見性;
(2) 掌握類的靜態成員、類的友元的定義和使用;
(3) 掌握共享數據的保護方法:常對象、常成員和常引用。
數組、指針與字符串
(1) 理解數組的聲明和使用,了解對象數組的概念;
(2) 掌握數組作為函數參數的使用方法;
(3) 掌握指針作為函數參數的使用方法;
(4) 理解指針型函數、指向函數的指針、對象指針的使用;
(5) 理解指針與數組、函數、字符串等的聯系。
繼承與派生
(1) 理解類的繼承與派生的概念;
(2) 理解類的繼承方式、掌握其訪問控制方法;
(3) 理解類型兼容規則,派生類的構造和析構函數的調用方法;
(4) 理解多繼承和虛基類的概念,掌握派生類成員的標識和訪問方法。
多態性
(1) 理解多態的類型和多態的實現方法;
(2) 理解運算符重載,掌握運算符重載為成員函數和非成員函數的方法;
(3) 理解虛函數與動態綁定,掌握如何使用虛函數;
(4) 理解純虛函數和抽象類的概念,掌握純虛函數和抽象類的使用方法。
流類庫與輸入輸出
(1) 了解I/O流的概念和流類庫結構;
(2) 掌握文件流的定義和相關操作的使用方法,包括文件的打開、關閉、讀寫、定位等操作;
(3) 掌握字符串流對象的建立和使用。
流類庫與輸入輸出
(1) 理解C++異常處理的機制;
(2) 掌握C++異常處理的方法。
第三部分 有關說明
1、命題說明(可包含題型設計):
本課程對各考點的能力要求分為三個層次用相關詞語描述:
較低要求——了解、明確;
一般要求——理解、熟悉;
較高要求——掌握、應用。
命題考試實施要求:
(1)本課程的命題考試根據本大綱規定的考試內容來確定。試卷兼顧覆蓋面、能力層次、內容、難易程度。
(2)題型主要以程序問答題和編程題為主。
(3)試題難易度分為易、較易、較難、難四級,試卷中四級難易度題目分數比例一般為2:3:4:1。
2、參考書目:
(1) 鄭莉,董淵. C++語言程序設計(第五版). 北京:清華大學出版社,2020年.
(2) 譚浩強. C++程序設計(第三版). 北京:清華大學出版社,2015年
3、其他規定:考試方式為閉卷筆試,總分150分,考試時間為 180分鐘。
4、本科目考試不得使用計算器。