东南大学C++课程-何洁月教授面向对象编程讲解
需积分: 12 76 浏览量
更新于2024-08-19
收藏 3.83MB PPT 举报
"东南大学C++课程,由何洁月主讲,涵盖了C++的基础和面向对象编程知识。课程旨在培养学生的基本计算机程序设计概念、C++语言语法和面向对象编程思想,提升编程及调试能力,为后续学习打下坚实基础。课程内容包括C++语言概述、数据类型与表达式、输入输出、控制结构、自定义数据类型、函数、类与对象等模块,并深入探讨面向对象特性如类、对象、构造函数、析构函数、类组合以及类模板。"
在C++编程中,"二义性"是一个重要的概念,它通常涉及到代码解析的不确定性。在给定的描述中,展示了两种不同形式的if语句嵌套,这两种形式可能会导致不同的执行结果,这便是二义性的一个实例。
首先,我们看第一个例子:
```cpp
if(I%3==0)
if(I%7==0)
cout<<I<<endl; // 输出能被3和7整除
else
cout<<I<<endl; // 输出能被3整除但不能被7整除
```
在这个例子中,如果I同时能被3和7整除,那么会输出I的值;如果I只能被3整除而不能被7整除,则输出I的值。这里并没有明确的二义性,因为每种情况都有明确的处理路径。
然后是第二个例子:
```cpp
if(I%3==0)
{
if(I%7==0)
cout<<I<<endl; // 输出能被3和7整除
}
else
cout<<I<<endl; // 输出不能被3整除
```
在这个例子中,如果I能被3整除,我们会进一步检查它是否也能被7整除,如果是,则输出I的值。然而,如果I不能被3整除,我们将直接输出I的值,而不会去检查它是否能被7整除。这里的二义性在于,外部的else语句与哪个if配对可能不清晰,可能导致读者误解。
在C++课程中,理解这种逻辑结构的二义性是至关重要的,因为它直接影响到程序的执行流程。同时,学习C++还需要掌握基本的数据类型、表达式、输入输出操作、控制结构(如if-else,switch等)、函数的定义与使用、函数模板、类与对象等核心概念。面向对象编程部分,包括类的定义、对象的创建、构造函数和析构函数的作用、继承、多态等,这些都是C++中的高级主题,对于编写复杂的、可维护的代码至关重要。
通过东南大学何洁月老师的C++课程,学生将不仅学习到语言的基本语法,还能深入理解面向对象编程的理念,培养出良好的编程习惯和调试技巧,为后续深入学习计算机科学和相关技术领域奠定坚实的基础。课程内容涵盖广泛,从入门级的C++程序设计到面向对象的编程实践,旨在全方位地提升学生的编程能力。
2010-11-10 上传
2023-07-17 上传
2023-05-29 上传
2024-06-29 上传
2024-10-10 上传
2023-06-01 上传
2024-04-04 上传