- 1、本文档共33页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
C强化训练答案
练习一:
1 已知String 类定义如下:
class String
{
public :
String(const char *str = NULL); // 用构造函数
String(const String another); // 拷贝构造函数
~ String(); // 析构函数
String operater =(const String rhs); // 赋值函数
private :
char *m_data; // 用于保存字符串
};
尝试写出类的成员函数实现。 g
String::String(const char *str) n
{
if ( str == NULL ) //strlen 在参数为NULL 时会抛异常才会有这步判断
o
{
m_data = new char[1] ; d
m_data[0] = \0 ; i
} e
else
{
m_data = new char[strlen(str) + 1];
w
strcpy(m_data,str);
} o
} a
i
l
String::String(const String another)
{
m_data = new char[strlen(another.m_data) + 1];
strcpy(m_data,other.m_data);
}
String String::operator =(const String rhs)
{
if ( this == rhs)
return *this ;
delete []m_data; //删除原来的数据,新开一块内存
1
m_data = new char[strlen(rhs.m_data) + 1];
strcpy(m_data,rhs.m_data);
return *this ;
}
String::~String()
{
delete []m_data ;
}
2. 什么是 引用”?申明和使用 引用”要注意哪些问题?
答:引用就是某个目标变量的 别名”(alias),对应用的操作与对变量直接操作效果完全相同。
申明一个引用的时候,切记要对其进行初始化。引用声明完毕后,相当于目标变量名有两个名
称,即 目标原名称和引用名,不能再把 引用名作为其他变量名的别名。声明一个引用,不
是新定义了一个变量,它只表示 引用名是目标变量名的一个别名,它本身不是一种数据类型,
g
因此引用本身不占存储单元,系统也不给引用分配存储单元。不能建立数组的引用。
n
3. 将 引用”作为函数参数有哪些特点?
(1)传递引用给函数与传递指针的效果是一样的。这时,被调函数的形参就成为原来主调函数
o
中的实参变量或对象的一个别名来使用,所以在被调函数中对形参变量的操作就是对其相应的目
标对象 (在主调函数中)的操作。 d
i
(2)使用引用传递函数的参数,在内存中并没有产生实参的副本,它是直接对实参操作;而使
e
用一般变量传递函数的参数,当发生函数调用时,需要给形参分配存储单 ,形参变量是实参变
量的副本;如果传递的是对象,还将调用拷贝构造函数。因此,当参数传递的数据较大时,用引
您可能关注的文档
最近下载
- 中心医院“十五五”发展规划(完整版).docx VIP
- 长沙市工贸企业安全生产管理基础资料 (指导手册).doc VIP
- 贵州省安全生产条例解读课件.ppt VIP
- 公路工程安全管理制度.docx VIP
- ISO 927-2009香辛料和调味品—杂质和外来物含量的测定.doc
- 压缩空气管径及压力损失计算表(管径、压损计算).xls VIP
- 2024年质量员-土建方向-岗位技能(质量员)证考试题库.pdf VIP
- 《无人机航拍技术》课件—06无人机拍摄实例分析.pptx VIP
- YB∕T 《电动汽车驱动电机用冷轧无底层取向电工钢带(片)》.pdf
- 《无人机航拍技术》课件—05无人机飞行的法规.pptx VIP
文档评论(0)