东南大学C++课程-何月洁教授讲解面向对象编程

需积分: 10 3 下载量 66 浏览量 更新于2024-08-19 收藏 3.83MB PPT 举报
"东南大学C++课程,由何月洁教授主讲,涵盖了C++的基础到面向对象编程的多个方面,旨在培养学生的程序设计能力及面向对象思维。课程内容包括C++语言的基本语法、数据类型、输入输出、控制结构、自定义数据类型、函数、类与对象等,并强调函数重载、类模板等核心概念。" 在C++编程语言中,运算符重载是一项重要的特性,允许程序员为已有的运算符赋予新的含义。然而,有一些规则和限制需要注意: 1. **不能重载的运算符**:在C++中,有四个运算符不能被重载,它们是点运算符`.`、指针成员访问运算符`.*`、作用域解析运算符`::`以及三目条件运算符`?:`。这些运算符在语言结构中具有特殊的地位,因此无法通过用户定义的函数来改变其行为。 2. **仅可重载已有运算符**:C++不允许创造新的运算符,只能对语言中已经存在的运算符进行重载,如`+`、`-`、`*`等。 3. **保留原有优先级和结合性**:重载运算符时,其优先级和结合性不会改变。这意味着重载的运算符在表达式中的解析方式必须保持一致,不能因为重载而改变原有的运算顺序。 4. **操作数数量不变**:每个运算符都有固定的操作数个数,重载运算符不能增加或减少操作数的数量。例如,二元加法运算符`+`始终需要两个操作数。 5. **至少一个自定义类型操作数**:重载的运算符至少需要有一个操作数是用户自定义的类型。这使得运算符重载主要用于扩展类或结构体的行为,而不是修改内置类型的行为。 课程内容深入浅出,从基础的C++程序设计开始,包括基本数据类型、表达式、输入输出、控制结构等。进一步,学生将学习到函数的相关知识,如函数的定义、内联函数、函数重载、函数模板等,这些都是C++编程中的关键概念。特别是函数重载,它允许同一运算符根据不同的参数列表有不同的实现,增强了代码的灵活性和可读性。 随后,课程引入面向对象编程,涵盖面向对象的思想、类与对象、构造函数和析构函数、类的组合以及类模板。类和对象是面向对象编程的核心,通过它们可以实现数据封装和抽象,而类模板则允许创建泛型类,提高了代码的复用性。课程还提及了面向对象标记,这部分通常涉及到C++的继承和多态特性。 东南大学的这门C++课程为学生提供了一个全面的C++学习路径,从基础语法到高级特性,有助于学生建立起坚实的编程基础,并掌握面向对象编程的基本技巧。