- 1、本文档共22页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
定义并测试长方形类CRect,长方形是由左上角坐标(left, top)和右下角坐标(right, bottom)组成。
#include iostream.h
#include math.h
class CRect //定义长方形类
{
private:
int left, top, right, bottom ;
public:
void setcoord(int, int, int, int);
void getcoord(int *L, int *T, int *R, int *B)
//注意:形参为指针变量
{
*L = left; *T = top;
*R = right; *B = bottom;
}
void print(void)
{
coutArea = ;
coutabs(right-left)*
abs(bottom-top)endl;
}
};
void CRect::setcoord(int L, int T, int R, int B)
{
left=L; top=T; right=R; bottom=B;
}
void main(void)
{
CRect r, rr;
int a, b, c, d ;
r.setcoord(100, 300, 50, 200);
r.getcoord( a, b, c, d );
//用变量的指针做参数,带回多个结果
cout left= a endl;
cout top= b endl;
cout right= c endl;
cout bottom= d endl;
r.print( );
rr = r; //对象可整体赋值
rr.print( );
}
运行结果:
left=100 top=300
right=50 bottom=200
Area = 5000
Area = 5000
返回ppt讲稿
例10.5 定义日期类,利用构造函数初始化数据成员。程序放在头文件date.h中,如下:
#include iostream.h
class Date
{
int Year, Month, Day;
public:
Date( ) //重载构造函数 1
{
Year=2003; Month=1; Day=1;
}
Date(int y) //重载构造函数 2
{
Year=y; Month=1; Day=1;
}
Date(int y, int m) //重载构造函数 3
{
Year=y; Month=m; Day=1;
}
Date(int y, int m, int d) //重载构造函数 4
{
Year=y; Month=m; Day=d;
}
void ShowDate( )
{
cout Year.Month.Dayendl;
}
};
主函数源文件为Li1005.cpp,内容如下:
#include date.h
void main( )
{
Date d1; //自动调用构造函数 1
Date d2(2008); //自动调用构造函数 2
Date d3(2008, 10); //自动调用构造函数 3
Date d4(2008, 10, 6); //自动调用构造函数 4
d1.ShowDate( );
d2.ShowDate( );
d3.ShowDate( );
d4.ShowDate( );
}
运行结果是:
2003.1.1
2008.1.1
2008.10.1
2008.10.6
当然我们可以定义带缺省值的构造函数,将上述构造函数简化,下述程序的功能与上述程序相当:
#include iostream.h
class Date
{
int Year, Month, Day;
public:
Date(int y=2003, int m=1, int d=1)
//带参数缺省值的构造函数
{
Year=y; Month=m; Day=d;
}
void ShowDate( )
{
cout Year.Month.Dayendl;
}
};
void main( )
{
Date d1, d2(2008), d3(2008, 10), d4(2008, 10, 6);
d1.ShowDate( );
d2.Sho
文档评论(0)