阅读背景:

c++ Primer Plus(第六版)第十三章习题,写代码之路

来源:互联网 
c++ Primer Plus(习题13.1)
/*13.1题的实现文件,书上的测试文件*/
//哪个方法不需要也根据实现而定,始终跟随客户的脚步
//这题细节方面被坑了,mainworks字符数组设置太小了,导致了一系列不可思议的问题
#include<iostream>
#include"classic.h"
using namespace std;
void Bravo(const Cd&disk);
int main()
{
	Cd c1("Beatles","Capitol", 14, 35.5);
	Classic c2 = Classic("Piano Sonata in B flat, Fantasia in C", "Alfred Brendel",
		"Philips", 2, 57.17);			
	Cd *pcd = &c1;						//这里是测试虚方法
	cout << "Using object directly:\n";
	c1.Roport();
	c2.Roport();
	cout << "Using type cd *pointer to objects:\n";
	pcd->Roport();						
	pcd = &c2;
	pcd->Roport();
	cout << "Calling a funtion with a Cd reference argument:\n";
	Bravo(c1);							//这也是测试虚方法,由调用对象决定
	Bravo(c2);
	cout << "Testing assigment: \n";
	Classic copy;						//测试派生类的赋值运算符
	copy = c2;
	copy.Roport();
	return 0;
}

void Bravo(const Cd&disk)
{
	disk.Roport();
}

c++ Primer Plus(习题13.1)
/*13.1题的实现文件,书上的测试文件*/



你的当前访问异常,请进行认证后继续阅读剩余内容。

分享到: