i6lan 分享题目的网站
试一试站内搜索 题目类型:问答题

下列哪些施工机械设备和施工机具
我国第一部社会主义类型的宪法通
止血带止血适用于较大的肢体动脉
统筹安排年度因公临时出国计划,
绿色制造指在保证产品的功能、质

完成下面类中成员函数的定义。


#include <iostream>

#include <string>

using namespace std;

class str

{private:

char *st;

public:

str(char *a)

{set(a);

}

str & operator=(____)

{delete st;

set(a.st);

return *this;

}

void show(){cout<<st<<endl;}

~str(){delete st;}

void set(char *s)//初始化st

{_____

strcpy(st,s);

}

};

void main()

{str s1("he"),s2("she");

s1.show(),s2.show();

s2=s1;

s1.show(),s2.show();}


答案:str &a,st=new char[strlen(s)+1];

[解析]对“=”运算符进行重载,调用时s2=s1,都是对象,所以形参使用对象的引用,不要使用对象作为形参(产生临时对象)。使用strcpy进行字符的复制,st必须有一定的空间,空间是strlen(s)+1(‘\0’作为结束符,strlen得到的长度不包括结束符)。

上一题 下一题

CopyRight©i6lan.com 关于本站
蜀ICP备2021017061号-1

川公网安备 51010402001278号