本文主要是介绍第十三周 课后实践:阅读程序1,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
(1)问题及代码:
#include<iostream>
using namespace std;
class A {
int a;
public:
A():a(5){}
virtual void print()const { cout<<a;}
};
class B: public A {
char b;
public:
B() { b='E'; }
void print() const { cout<<b; }
};
void show(A &x) { x.print(); }
int main()
{
A d1,*p;
B d2;
p=&d2;
d1.print();
d2.print();
p->print();
show(d1);
show(d2);
return 0;
}
运行结果:
(2)问题及代码:
#include <iostream>
using namespace std;
class BASE
{
private:
char c;
public:
BASE(char n):c(n) {}
virtual ~BASE() { cout<<c; }
};
class DERIVED:public BASE
{
private:
char c;
public:
DERIVED(char n):BASE(n+1),c(n) {}
~DERIVED(){ cout<<c; }
};
int main(){
DERIVED d('X');
return 0;
}
运行结果:
(3)问题及代码:
#include <iostream>
using namespace std;
class Base
{
public:
virtual void Who() =0;
};
class FirstDerived:public Base
{
public:
void Who() { cout<<"F"; }
};
class SecondDerived:public Base
{
public:
void Who() { cout<<"S"; }
};
int main()
{
FirstDerived first_obj;
SecondDerived second_obj;
Base &bref=first_obj;
bref.Who();
bref=second_obj;
bref.Who();
Base *bp;
bp=&first_obj;
bp->Who();
bp=&second_obj;
bp->Who();
return 0;
}
运行结果:
这篇关于第十三周 课后实践:阅读程序1的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!