C++入门:类定义与缺省参数详解

需积分: 10 1 下载量 160 浏览量 更新于2024-08-19 收藏 2.77MB PPT 举报
在C++入门课程中,类的定义是程序设计的基础之一,它是一种面向对象编程的核心概念。类定义的基本结构如下: 1. **类名**:首先,你需要为你的类命名,如"Student",这是一个标识符,用于在整个程序中唯一地表示这个类。 2. **访问修饰符**:C++中的访问修饰符包括`private`、`public`和`protected`,它们控制类成员(数据和函数)对外部的可见性。- `private`成员只对类内部可见,外部无法直接访问;`public`成员对外部完全公开,可以直接访问;`protected`成员对类的子类以及外部都有访问权限,但通常用于提供有限的访问。 ```cpp class 学生类名 { private: // 成员数据(如学生的姓名、数学分数等) char 名称[20]; float 数学分数; float 语文分数; public: // 成员数据(如平均成绩) float 平均成绩; // 成员函数(如设置和获取成绩的方法) void 设置名称(char* name); void 设置数学(float math); void 设置语文(float ch); float 获取平均成绩(); protected: // 可能需要被子类继承的成员数据和函数 // ... }; ``` 在类定义的具体示例中,如`Student`类,它包含私有成员`Name`、`Math`和`Chiese`,以及公有成员`average`和三个方法。`setName`、`SetMath`、`SetChinese`和`GetAverage`分别用于设置和获取学生的属性。 **具有缺省参数值的函数**是C++中的一种特性,它允许在函数定义时给参数指定默认值。当调用函数时,如果没有提供这些参数的值,将使用预设的默认值。例如,`fac`函数和`area`函数展示了如何定义具有缺省参数的函数,以及如何正确使用它们。 - `fac(int n = 2)`:默认情况下计算阶乘,如果提供了参数n则使用该值。 - `area(int long = 4, int width = 2)`:默认情况下计算长方形面积,可以根据提供的长和宽进行调整。 在使用具有缺省参数的函数时,需要注意以下规则: - 缺省参数必须放在函数参数列表的末尾。 - 函数原型声明时可以省略变量名,但必须给出缺省值。 - 同一函数的不同版本,若重载,必须通过参数个数、类型或返回值来区分。 **函数的重载**是C++中另一个重要的概念,指同一名称的不同函数实现,每个函数根据其参数类型和数量来执行不同的操作。例如,`fun`函数的两个版本,一个处理两个整数的加法,另一个处理单个整数的平方。 在实际编程中,遵循以下原则来确保正确重载函数: - 参数个数不同或者参数类型不同是重载的关键。 - 只有返回值不同不足以构成重载,除非其他因素(如参数类型)也不同。 C++的类定义和函数重载是构建复杂程序结构的基础,理解和掌握这些概念对于学习和开发C++应用至关重要。通过实例演示,你可以更好地理解这些概念如何应用于实际编程中。