类 虚函数

本文详细介绍了C++中类的私有(private)、受保护(protected)成员的访问控制规则,解释了如何在类体外定义成员函数,并探讨了成员访问方式,包括对象名与成员访问运算符.及指向对象的指针与箭头成员访问运算符->的使用。此外还深入讨论了虚函数的概念、声明与使用,以及抽象类和纯虚函数的意义。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

private:定义私有成员,只能被类本身的成员函数和友元访问,其他类的成员函数包括派生类的成员函数都不能访问。

protected:可被类本身的成员函数、友元、派生类的成员函数访问。

作用域运算符::用来指定成员函数属于哪个类,给定作用域的大小。

在类体外定义成员函数的格式---

返回类型 类名::成员函数名(参数说明)

{

函数体;

}

163 成员访问:

一个对象的成员就是该对象的类所定义的成员,包括数据成员和成员函数。

对象名与成员访问运算符.一起使用;

指向对象的指针与箭头成员访问运算符->一起使用。

对于数据成员的访问---

对象名.成员名

(*对象指针名).成员名

对象指针名->成员名

对于成员函数的访问---

对象名.成员函数名(参数表)

(*对象指针名).成员函数名(参数表)

对象指针名->成员函数名(参数表)

263 虚函数【父类的指针和引用访问子类对象】

虚函数的声明只能出现在类声明的函数原型的声明中,不能出现在函数体实现中,同时基类中只有公有成员或保护成员才能被声明为虚函数;

在派生类中重新定义虚函数的时候,virtual可以不写;

动态联编只能通过成员函数来调用或通过指针、引用来访问虚函数,如果用对象名的形式来访问虚函数将采用静态联编;

虚函数必须是所在类的成员函数,不能使友元或静态成员函数;

虚函数可以在另一个类中被声明为友元函数;

构造函数不能被声明为虚函数,析构可以;

内联函数不能在运行中动态确定其位置,所以不能被声明为虚函数。

【重载--编译,虚函数--运行】

264 抽象类&纯虚函数

建立抽象类就为了通过它多态的使用其中的成员函数;

抽象类是带有至少一个纯虚函数的类;

纯虚函数的一般定义形式--

virtual 函数类型 函数名 (形参表)= 0;
纯虚函数没有函数体,不能被调用。一般是在定义抽象基类时用的。


评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值