编写A和B,要求:(1)类A公有继承类B;(2)类A构造函数重载;(3)类A有个友员;(4)使用不的构造函数创建不同的对象

来源:百度知道 编辑:UC知道 时间:2024/05/26 18:35:27

#include <stdio.h>
using namespace std;
class B
{
public:
B()
:m_ib(0)
{}
B(int b)
:m_ib(b){}
~B(){}
private:
int m_ib;
};
class A:pulbic B
{
public:
A()
:B()
,m_ia(0)
{}
A(int a, int b)
:B(b)
,m_ia(a)
{}
~B(){}
friend void Fun(const A& a);
private:
int m_ia;
};
void Fun(const A& a)
{
cout << a.m_ia<< endl;
}
int main()
{
A a(1, 2);
B b(1);
Fun(a);
}

file: ab.cc
============================================
#include <cstdio>

class B
{

public:
void print_info(){puts("I am class B");}
virtual ~B(){puts("destructor of class B called..");}

};

class A:public B
{

public:
A():a(65){}
A(int i){a=i;}
friend void set_a(A &,int);
void prin