南开大学C++程序设计课程大纲

需积分: 0 0 下载量 182 浏览量 更新于2024-09-12 收藏 59KB DOC 举报
"C++程序设计(2)" 是南开大学软件学院针对一年级本科生开设的一门专业基础课程,旨在使学生掌握C++编程语言,为后续的面向对象软件方法学、Windows应用程序开发、Unix管理与开发以及.NET技术与C#语言等课程打下坚实基础。 课程预备知识包括计算机的基本操作和C语言编程知识与能力。这意味着学生在学习C++之前,应具备一定的计算机操作基础和C语言编程经验。 课程在教学计划中的地位至关重要,作为专业基础课,它为四门后续课程提供了必要的知识支撑。课程的主要目标是使学生能够熟练地使用C++语言编写程序,并理解面向对象编程的核心概念。 课程内容及学时分配如下: 1. **Introduction to C++ Language & Objects; Making & Using Objects**(4学时):这部分内容将介绍C++语言的基础知识,包括对象的创建和使用,以及C++与C的差异。 2. **Define variables on the fly; Constants, C++ explicit cast**(4学时):讲解动态变量定义,常量的使用,以及C++中的强制类型转换。 3. **Debugging (#, assert)**(4学时):学习如何使用调试工具如`#`和`assert`进行程序调试。 4. **Function pointers**(4学时):深入理解函数指针的概念和应用。 5. **Data abstraction; Hiding the Implementation**(4学时):探讨数据抽象和隐藏实现,这是面向对象编程的核心概念。 6. **The C stack example**(4学时):通过C语言的栈示例解释内存管理。 7. **Drawbacks of C**(4学时):分析C语言的局限性和不足。 8. **Improvements of C++**(4学时):介绍C++为解决C语言问题引入的改进措施。 9. **Size of an object**(4学时):讨论对象在内存中的大小和布局。 10. **Inclusion guard**(4学时):防止头文件重复包含的机制。 11. **Nested Structure**(4学时):学习嵌套结构体及其在C++中的使用。 12. **Access control: public, private, friends**(4学时):讲解访问控制关键字,如public、private和friend。 13. **Declaring a nested structure as friend**(4学时):讨论如何声明嵌套结构为友元。 14. **Object layout**(4学时):深入理解对象的内存布局和访问方式。 除了理论教学,课程还包括习题、实验、课堂讨论、写作、社会调查、测验和考试等多种教学环节,确保学生能够全面理解和掌握C++编程技能。课程内容丰富,注重实践,有助于培养学生的编程思维和问题解决能力。