#include<iostream>
#include<string>
using namespace std;
class B1
{
char *a;
protected:
B1(): a(0){} //只能由本类及派生类调用
public:
~B1()
{
delete []a;
cout << "B1 ";
}
void Output()
{
cout << a << endl;
}
void Seta(char *aa)
{
delete []a;
a = new char[strlen(aa) + 1];
strcpy(a, aa);
}
};
class B2:public B1
{
char* b;
public:
B2():b(0){}
~B2()
{
delete []b;
cout << "B2";
}
void Output()
{
B1::Output();
cout << b << endl;
}
void Setb(char *aa, char* bb)
{
Seta(aa);
delete []b;
b = new char[strlen(bb) + 1];
strcpy(b, bb);
}
};
void Input(B2* &r, int n)
{
r = new B2[n];
char a[20], b[20];
for (int i = 0; i < n; i++)
{
cout << "Input two strings:";
cin >> a >> b;
r[i].Setb(a, b);
}
}
void main()
{
B2* a = NULL;
int n = 3;
Input(a, n);
for (int i = 0; i < n; ++i)
{
a[i].Output();
}
delete []a;
cout << endl << sizeof(B2) << endl;
}
分享到:
相关推荐
c++类继承关系 Hierarchy Chart 继承关系 基类CObject派生出的各类,MSDN中用
"C++类继承内存布局详解图" C++类继承内存布局是一种复杂的机制,涉及到类的继承、成员变量的访问、成员函数的访问、虚函数调用、强制转换到基类或虚基类等多个方面。在本文中,我们将从C结构的布局开始,逐步介绍...
在C++编程语言中,类继承是面向对象编程的一个核心概念。它允许我们创建一个新类,该类基于已存在的类(称为基类或父类),并在此基础上扩展功能或修改行为。通过继承,我们可以实现代码重用,设计更加灵活的类结构...
从给定的文件信息中,我们可以提取到关于C++类继承和类的使用的重要知识点,虽然文件中的示例并未直接涉及类继承,但通过分析,我们可以深入理解C++中的类和对象,以及如何利用静态成员变量和成员函数来实现特定功能...
### C++类继承实例解析 在C++编程语言中,类继承是一种强大的机制,它允许一个类(称为派生类)继承另一个类(称为基类)的属性和方法。这不仅可以减少代码重复,还能增强代码的可读性和可维护性。下面我们将详细...
在C++编程中,类继承是面向对象编程的一个核心特性,它允许我们创建一个新类(子类)作为现有类(基类)的扩展。这个主题涵盖了如何在内存中表示和管理这种继承关系,这就是所谓的“内存布局”。下面将详细讨论C++类...
c++类继承 ppt文档第9章
C++ MSDN的类总图,显示了所有类 之间的关系 非常有用!~~
这是张图谱,是关于c++中类的继承派生关系图谱,从基类cobject到各个类!
根据给定的信息,我们可以深入探讨C++中的抽象类与继承机制。下面将详细介绍如何通过抽象类和继承在C++中实现特定的功能。 ### 概述 在这个示例中,我们有三个具体的类:`Student`、`Lecture` 和 `Module`,它们都...
在C++编程语言中,多继承是一种特性,允许一个派生类从多个基类继承属性和行为。这个特性使得代码重用更为灵活,但同时也带来了潜在的问题,如菱形问题和二义性。本示例"**C++多继承Demo**"通过包含源代码文档...
C++类继承之子类调用父类的构造函数的实例详解 C++类继承是一种重要的面向对象编程技术,通过继承可以实现代码的重用和模块化。在C++类继承中,子类可以继承父类的成员变量和成员函数,但是在子类中调用父类的构造...
C++类的继承、友元模板和虚函数的实现示例 本文将通过一个示例程序,讲解C++类的继承、友元和虚函数的使用,展示了C++类继承的基本概念和实现方法。 一、类的继承 在C++中,类的继承是指一个类可以继承另一个类的...
C++的子类与孙子类都实现了虚函数时,孙子类的实现会覆盖掉子类的实现。 继承的主要的应用是把不同的类放到一个数组中,然后遍历调用同名函数。 实例如下: #include #include #include using ...
主要介绍了C++类继承 继承后函数的值实现详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
在C++中,类的继承性是面向对象编程的一个核心概念,它允许创建新的类(称为派生类)基于已存在的类(称为基类)。这种机制使得代码复用和类的扩展变得更加简单和高效。在单继承中,一个派生类只能有一个基类,但在...
1. **C++类继承C#基类**:首先,通过托管C++实现一个适配器类,该类同时继承自C#的基类和C++类,以此达到让C++类间接地继承C#类的目的。这一步骤确保了C++类可以访问和使用C#类提供的服务。 2. **动态创建和调用...
C++继承是面向对象编程(OOP)中的一个核心概念,它允许我们创建新的类,这些新类可以扩展已存在的类的功能。在这个“c++继承分类”主题中,我们将深入探讨C++中的继承机制,以及如何在Qt环境中利用这一特性进行开发...
在C++编程语言中,类的继承和实现是面向对象编程的重要组成部分,它们构成了软件设计的基础框架,使得代码能够重用、扩展和组织得更加高效。多态性是C++中另一个关键特性,它允许不同类的对象对同一消息作出不同的...
详细介绍c++类的继承方式,public、private、protect。