目录
类:作为C++的核心,是对类的抽象后,自定义与之匹配的数据类型
类定义格式:
class 类名
{
private:
成员属性或成员函数
protected:
成员属性或成员函数
public:
成员属性或成员函数
};
(1)class是声明类的关键字,class后跟类名(一般首字母大写)
(2)类包括成员属性和成员函数。成员属性代表对象的属性;成员函数实现对象的行为
(3)private、protected和public关键字称为访问权限符,它规定了类中成员的访问属性。这3个关键字可以按任意顺序出现,默认时为私有的(private)
1 .成员访问权限
可以定义3种不同的访问权限符,分别为public(公有类型)、private(私有类型)和protected(保护类型)
public (共有类型)
public 声明为公有成员:完全公开,任意可访问、修改;
private(私有类型)
private声明成员为私有成员:只能被它所在类内函数和该类的友元函数访问,其他函数(主函数)访问出错。
protected(保护类型)
protected声明成员为保护成员:外界是无法直接访问,只能由类内函数及从该类派生的子类的成员函数及友元函数访问。
2 .三种访问类型的可访问权限:
类内函数 | 类外函数 | 友元函数 | 子类成员函数 | |
protected: | √ | × | √ | √ |
public: | √ | √ | √ | √ |
private: | √ | × | √ | × |
3. 成员函数实现方式
类的成员函数与一般函数的区别:它属于一个特定的类,是类的一个成员;
两重限定:
- 三种访问类型的限定属性,限制是否有权限访问调用函数;
- 对象在有效生命周期内,析构函数调用销毁前,函数可调用
两种定义方式:
- 类内定义:使用代码短小(不超过三行代码)简单(类内函数自动成为内联函数)
- 类外定义:类内函数声明,类外定义函数,适用代码篇幅长(超过三行代码)、复杂的函数
- 类外定义格式:
- 函数返回类型 类名 :: 函数名(参数列表)作用域符“::”表明函数所属的类
函数返回类型 类名 :: 函数名(参数列表)
{
......
}