📄 cjj113.htm
字号:
&s2)<BR>{<BR>
s1.setxy(10,20);<BR>
s2.setxy(30,40);<BR>}<BR>void
main()<BR>{<BR> Sample
p(1,2),q;<BR>
q.copy(p);<BR>
func(p,q);<BR>
p.print();<BR>
q.print();<BR>}<BR>解:<BR>
本题说明对象引用作为函数参数的作用。Sample类中的copy()成员函数进行对象拷贝。在main()中先建立对象p和q,p与q对象的x,y值相同,调用func()函数,由于第2个参数为引用类型,故实参发生改变;而第1个参数不是引用类型,实参不发生改变。所以输出为: <BR>
x=1,y=2<BR>
x=30,y=40<BR><BR>-------------------------------------------------------<BR><BR><FONT
color=#0000ff>题5.设计一个Book类,包含图书的书名、作者、月销售量等数据成员,其中书名和作者采用字符型指针,另有两个构造函数、一个析构函数和两个成员函数setbook()和print(),其中setbook()用于设置数据,print()用于输出数据,其说明如下:<BR>
void print(ostream&
output)<BR>即引用输出流。<BR></FONT>解:<BR>
依题意,本题程序如下:<BR>#include<iostream.h><BR>#include<string.h><BR>class
Book<BR>{<BR> char
*title; //
书名<BR> char
*author; //
作者<BR> int
numsold; //
月销售量<BR>
public:<BR>
Book(){}<BR>
Book(const char *str1,const char *str2,const int
num)<BR>
{<BR>
int
len=strlen(str1);<BR>
title=new
char[len+1];<BR>
strcpy(title,str1);<BR>
len=strlen(str2);<BR>
author=new
char[len+1];<BR>
strcpy(author,str2);<BR>
numsold=num;<BR>
}<BR>
void setbook(const char *str1,const char
*str2,const int
num)<BR>
{<BR>
int
len=strlen(str1);<BR>
title=new
char[len+1];<BR>
strcpy(title,str1);<BR>
len=strlen(str2);<BR>
author=new
char[len+1];<BR>
strcpy(author,str2);<BR>
numsold=num;<BR>
}<BR>
~Book()<BR>
{<BR>
delete
title;<BR>
delete
author;<BR>
}<BR>
void print(ostream& output)
//
输出流引用作为参数<BR>
{<BR>
output<<"输出数据"<<endl;<BR>
output<<"
书名:"<<title<<endl;<BR>
output<<"
作者:"<<author<<endl;<BR>
output<<"
月销售量:"<<numsold<<endl;<BR>
}<BR>};<BR>void main()<BR>{<BR>
Book
obj1("C语言程序设计","谭浩强",800),obj2;<BR>
obj1.print(cout);<BR>
obj2.setbook("C++语言程序设计","李春葆",300);<BR>
obj2.print(cout);<BR>}<BR>本程序的执行结果如下:<BR>输出数据<BR>
书名:C语言程序设计<BR> 作者:谭浩强<BR>
月销售量:800<BR>输出数据<BR>
书名:C++语言程序设计<BR>
作者:李春葆<BR>
月销售量:300<BR><BR></TD>
</TR>
</TBODY>
</TABLE>
</TD>
</TR>
<TR>
<TD height=35 width="100%">
<DIV align=center></DIV>
</TD>
</TR>
</TBODY>
</TABLE>
</TD></TR></TBODY>
</TABLE>
</TD></TR></TBODY>
</TABLE>
</TD></TR></TBODY>
</TABLE>
<TABLE align=center border=0 cellPadding=0 cellSpacing=0 width=750>
<TBODY>
<TR>
<TD bgColor=#c1c1c1 height=1></TD>
</TR>
</TBODY>
</TABLE>
<TABLE align=center border=1 cellPadding=0 cellSpacing=1
style="BORDER-COLLAPSE: collapse" width=550>
<TBODY>
<td align=center>
<div align="center">
<p><a href=mailto:jjsun36@sohu.com ><span class="body14black">mailto:jjsun36@sohu.com</span></a><span class="body12red">
热线电话:0523-4864559</span></p>
</div>
</td>
</TBODY>
</TABLE>
</BODY></HTML>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -