C++中的继承public, protected和private

本文详细介绍了C++中的继承和访问控制,包括public, protected, 和private访问修饰符的作用,以及如何通过友元函数和友类打破数据隐藏的限制。此外,还探讨了基类和派生类之间的关系,特别是继承类型和存取控制在继承过程中的应用。" 100207789,9016345,DELETE操作慢于SELECT的原因分析,"['数据库', 'SQL', '性能优化']

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

C++访问修饰符

继承是 C++ 面向对象编程的关键特性之一。它允许我们从现有类(基类)创建一个新类(派生类)。
派生类继承了基类的特性,并且可以拥有自己的附加特性。例如,

C++ 等面向对象编程语言的主要特性之一是数据隐藏。数据隐藏是指限制对类的数据成员的访问。这是为了防止其他函数和类篡改类数据。但是,让一些成员函数和成员数据可访问也很重要,以便可以间接操作隐藏的数据。C++ 的访问修饰符允许我们确定哪些类成员可以被其他类和函数访问,哪些不能。

public访问修饰符

public 关键字用于创建公共成员(数据和函数)。公共成员可以从程序的任何部分访问。

private访问修饰符

private 关键字用于创建私有成员(数据和函数)。私有成员只能从类内部访问。但是,友元类和友元函数可以访问私有成员。

protected 访问修饰符

protected 关键字用于创建受保护的成员(数据和函数)。可以在类内和派生类中访问受保护的成员。

C++友函数和友类

数据隐藏是面向对象编程的一个基本概念。它限制了来自类外部的私有成员的访问。同样,受保护的成员只能由派生类访问,而不能从外部访问。例如,

然而,C++ 中有一个叫做友元函数的特性,它打破了这个规则,允许我们从类外部访问成员函数。同样,还有一个朋友类。

C++的友函数

友元函数可以访问类的私有和受保护数据。我们在类的主体内使用friend关键字声明了一个friend函数。

类的友元函数在该类的范围之外定义,但它有权访问该类的所有私有成员和受保护成员。即使友元函数的原型出现在类定义中,友元函数也不是成员函数。

友元可以是函数、函数模板、成员函数、类或类模板,在这种情况下,整个类及其所有成员都是友元。


#include <iostream>

using namespace std;

class  complex {
   
   
public:
	complex(float real_v, float imag_v): real(real_v), imag(imag_v){
   
   };
	complex operator=(complex a) {
   
   real=a.real; imag=a.imag; return *this;};

// friend function
    friend complex operator+(complex a, complex b);
	friend void  show_complex
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值