目 录
函数的提高
函数默认参数
-
语法
返回值类型 函数名(参数 = 默认值)
-
特性
若传入参数,则优先使用传入的参数,否则使用默认参数
-
注意
如果形参列表中某个参数有默认值,则其后面的所有参数都必须要有默认值
函数占位参数(了解)
-
语法
返回值类型 函数名(数据类型)
-
特性
占位参数可以有默认值
函数重载
-
作用
函数名称相同,提高函数名的复用性
-
条件
- 函数名相同
- 函数在同一作用域下
- 函数参数的 类型不同 或 个数不同 或 顺序不同
-
注意
-
函数返回值不可以作为函数重载的条件
-
引用作为重载条件时,要注意加const和不加const的区别
-
当函数重载遇到默认参数时,要避免二义性的出现
-
类和对象
面向对象的特性
-
万事万物皆为对象,对象有其属性和行为
-
封装
-
继承
-
多态
-
封装
-
语法
- class 类名{访问权限:属性/行为};
-
意义
-
将属性和行为作为一个整体,表现生活中的事物
-
将属性和行为加以权限控制
-
-
示例—设计圆类求圆的周长和面积
#include <iostream> using namespace std; #define PI 3.14 //需求:设计一个圆类,求圆的周长和面积 //class代表设计一个类,后面紧跟着的就是类的名称 class Circle { //公共访问权限 public: //行为 //设置半径 void setRadius(int radius); //求周长 double getCircumference(void); //求面积 double getArea(void); //私有访问权限 private: //属性 //半径 int radius; }; int main() { //通过圆类实例化一个圆对象 Circle c1; //设置圆的半径 c1.setRadius(10); //求圆的周长和面积并打印 cout << "圆的周长:" << c1.getCircumference() << endl << "圆的面积:" << c1.getArea() << endl; return 0; } //设置圆的半径 void Circle::setRadius(int radius) { this->radius = radius; } //计算圆的周长 double Circle::getCircumference(void) { return 2*PI*this->radius; } //计算圆的面积 double Circle::getArea(void) { return PI*this->radius*this->radius; }
运行结果: