C++ 上行转换和下行转换17 Mar 2025 | 4 分钟阅读 本节将讨论 C++ 编程语言中向上转型和向下转型的示例。当我们将一种数据类型转换为另一种类型时,这个过程称为类型转换。但是,向上转型和向下转型是对象类型转换的类型。假设父类和子类有两种类型的对象,parent_obj 和 child_obj,可以使用 C++ 编程中的向上转型和向下转型将它们转换为父类到子类和子类到父类。 ![]() 向上转型它是从基类的指针或引用创建派生类的指针或引用的过程,这个过程称为向上转型。这意味着向上转型用于将派生类的引用或指针转换为基类。与向下转型相比,向上转型是安全的类型转换。它允许公共继承,隐式地将一个类的引用转换为另一个类,而无需显式类型转换。默认情况下,向上转型在基类和派生类之间创建“is-a”关系。 派生类可以继承所有基类属性,包括数据成员和成员函数,以使用派生类对象执行函数,就像我们使用基类对象一样。 C++ 中向上转型的程序示例让我们考虑一个在 C++ 编程语言中将派生类的指针转换为基类的指针的示例。 Program1.cpp 输出 It is the Super function of the Base class 向下转型向下转型是向上转型的相反过程,它将基类的指针或引用转换为派生类的指针或引用。它手动将基类的对象转换为派生类的对象,因此我们必须指定显式类型转换。在大多数情况下,向下转型不遵循is-a关系。它不如向上转型安全。此外,派生类可以添加新功能,例如:使用这些数据成员的新数据成员和类成员函数。但是,这些功能不能应用于基类。 C++ 中向下转型的程序示例让我们创建一个示例,在 C++ 编程语言中将基类的对象向下转型为派生类。 Program2.cpp 输出 It is the function of the Child class C++ 中向上转型和向下转型的程序示例让我们考虑一个示例,在 C++ 中使用向下转型和向上转型将基类转换为派生类,并将派生类的对象转换为基类。 Program3.cpp 输出 I am in the Parent class I am in the Parent class I am in the Myson class |
C++ 是一种类似的编程语言,它结合了 C 编程语言和 Simula67 的特性(Simula67 被认为是第一门面向对象的语言)。C++ 建立了类和对象的概念。您是否正在寻找一本入门好书...
阅读 6 分钟
私有继承 私有继承是一种不同的方法,我们可以通过它实现 has-a 关系。借助私有继承,我们可以将类的受保护成员和公共成员变为类的私有成员。这意味着在实现私有...
阅读 4 分钟
假设我们有两个非负数 x 和 y,以及两个值 l 和 r。我们必须确定在这两个给定数字的 l 到 r 的范围内,所有位是否互为补码。我们将学习如何...
阅读 2 分钟
在本文中,我们将讨论迭代快速排序的 C++ 程序。但在进入其实现之前,我们必须了解迭代快速排序及其算法和示例。一种以其实用效率和功效而闻名的流行排序算法被称为“快速排序”……
阅读 4 分钟
在本文中,您将了解为什么全局变量在 C++ 中是邪恶的:全局变量在任何程序函数之外定义和声明。在程序的整个生命周期中,它们都保持其理想。在程序的执行过程中,它们是可用的。非 `const` 的全局变量...
阅读 3 分钟
当定义一个数组时,我们需要创建一些东西,因为在定义一个类时;我们需要注意的是,不会分配任何存储空间。因此,使用类的对象创建变得至关重要。初始化数组有很多方法……
阅读 3 分钟
C++ 用于创建信用卡验证器应用程序。它使用 Luhn 算法验证信用卡号并识别信用卡类型。C++ 编程语言用于创建信用卡验证器应用程序,该应用程序验证信用卡号的有效性...
7 分钟阅读
在竞技编程中,快速执行、输入和输出非常重要。有时我们只需要在数组中输入五个数字,而有时可能需要输入 10,000 个数字。在这些情况下,快速 I/O 就派上用场了。现在让我们讨论一些...
阅读 2 分钟
介绍:类的成员数据通过初始化列表进行初始化。构造函数将成员初始化列表指定为冒号后跟着逗号分隔的列表。下面是使用初始化列表初始化 Point 类的 x 和 y 属性的示例...
阅读 4 分钟
cerr 和 clog 都是 C++ 中与标准错误设备连接的流对象,它们的行为略有不同。ostream 类包含对象 cerr 和 clog,它们用于将错误消息和其他诊断数据输出到标准...
阅读 3 分钟
我们请求您订阅我们的新闻通讯以获取最新更新。
我们提供所有技术(如 Java 教程、Android、Java 框架)的教程和面试问题
G-13, 2nd Floor, Sec-3, Noida, UP, 201301, India