C++继承基础概念详解

开发 后端
C++继承可以帮助我们扩展已存在的代码模块,主要目的都是为了代码的重用。我们将会在这篇文章中为大家详细讲解这方面的知识点。

C++编程语言同样也具有面向对象的相关特性。那么它都具有哪些特点呢?在这里我们就为大家详细介绍一下有关C++继承的一些基本特性,希望能帮助大家对这一语言有一个详细的了解。#t#

1.面向对象技术的基本概念是什么?

对象,类和继承。

2.虚函数与多态

虚函数就是允许被其子类重新定义的成员函数。而子类重新定义父类虚函数的做法,被称为“覆盖”(override)。

多态性是允许你将父对象设置成和它一个或更多的子对象相等的技术,赋值之后,父对象就可以根据当前赋值给它的子对象以不同的方式运作。简单的说,就是:允许将子类类型的指针赋值给父类类型的指针。多态性在C++中是通过虚函数实现的。

3.多态的作用是什么?

封装可以隐藏实现细节,使得代码模块化;C++继承可以扩展已存在的代码模块(类);它们的目的都是为了代码重用。而多态则是为了实现另一个目的——接口重用!

4.接口

C++实际没有接口这个关键字,他是用抽象类的纯虚函数来实现的。

5.关于类

类的私有内部表示被称为是封装的(encapsulated),而类的共有部分被称为类接口(class interface)。

共有成员:在程序的任何地方都可以被访问。实行信息隐藏的类将其public成员限制在成员函数上。要访问成员函数,必须要定义类对象。

私有成员:只能被成员函数和类的友元访问,实行信息隐藏的类把其数据成员声明为private。

被保护成员:对派生类就像public一样,对其他程序表现的像private一样。在无C++继承的类中,protected和private控制符是没有差别的。

6.共有继承,私有继承,保护继承

在公有继承时,派生类的对象可以访问基类中的公有成员,派生类的成员函数可以访问基类中的公有成员和保护成员。

在私有继承时,基类成员对派生类对象来说,基类的所有成员都是不可见的。

对派生类来说,基类的公有成员和protected成员是可见的,可以用成员函数来访问。

私有继承意味着基类的成员,不能被后来的类再继承了。

在保护C++继承时,基类的共有成员和保护成员都作为派生类的保护成员,这意味着它们可以被“后来从该类派生的类”访问,但不能在层次结构之外被访问。

7.虚函数继承与虚拟继承

这两个概念很容易混淆。

虚函数继承,其实就是虚函数。只不过虚函数肯定是用在C++继承中,不然也没有必要存在了。它是指一个动态绑定的过程。

虚拟继承是多重继承中特有的概念,它是指子类中只保留父类的父类……中的一个变量,从而不会使子类中包含父类同一个成员多次。

责任编辑:曹凯 来源: 博客园
相关推荐

2010-02-02 09:43:27

C++存储区域

2010-02-02 11:16:28

C++异常

2010-02-02 13:41:01

C++类继承

2010-02-06 09:53:26

C++ void

2010-02-01 14:53:42

C++属性

2010-02-02 10:33:22

C++引用

2010-02-02 15:30:05

C++ include

2010-02-01 17:24:41

C++循环语句

2010-02-06 14:04:58

C++内存使用机制

2011-07-15 01:38:56

C++this指针

2023-09-14 09:54:01

Btrfs文件系统

2010-02-05 17:00:06

C++单例模式

2010-01-15 10:41:06

CC++

2009-07-30 18:20:21

C#继承

2010-01-21 13:48:30

C++基类

2021-12-21 15:31:10

C++语言指针

2009-08-13 18:02:50

C#基础概念

2011-04-20 09:50:45

Virtual

2011-07-15 00:47:13

C++多态

2010-07-20 16:05:07

Perl包
点赞
收藏

51CTO技术栈公众号