网创优客建站品牌官网
为成都网站建设公司企业提供高品质网站建设
热线:028-86922220
成都专业网站建设公司

定制建站费用3500元

符合中小企业对网站设计、功能常规化式的企业展示型网站建设

成都品牌网站建设

品牌网站建设费用6000元

本套餐主要针对企业品牌型网站、中高端设计、前端互动体验...

成都商城网站建设

商城网站建设费用8000元

商城网站建设因基本功能的需求不同费用上面也有很大的差别...

成都微信网站建设

手机微信网站建站3000元

手机微信网站开发、微信官网、微信商城网站...

建站知识

当前位置:首页 > 建站知识

C++Primer13.1.2节练习-创新互联

练习13.6:

五峰网站建设公司创新互联公司,五峰网站设计制作,有大型网站制作公司丰富经验。已为五峰成百上千提供企业网站建设服务。企业网站搭建\成都外贸网站建设要多少钱,请找那个售后服务好的五峰做网站的公司定做!

拷贝赋值运算符是类的重载运算符,是类的成员函数,接受一个与其所在类相同类型的参数,返回一个指向其左侧运算对象的引用。

当我们对对象进行拷贝赋值时,会用到拷贝赋值运算符。

对于某些类,合成的拷贝赋值运算用来禁止该类型对象的赋值。如果拷贝赋值运算符并非出于此目的,它会将右侧运算对象的每一个非static成员赋予左侧运算对象的对应成员,这一工作是通过成员类型的拷贝赋值运算符来完成的。

如果一个类未定义自己的拷贝赋值运算符,编译器会为它生成一个合成拷贝赋值运算符。

练习13.7:

StrBlob类和StrBlobPtr类没有定义拷贝赋值运算符,编译器会为这两个类定义合成拷贝赋值运算符。

对于StrBlob类的拷贝赋值,使用智能指针shared_ptr的拷贝赋值运算符来对其成员data进行拷贝赋值,对应内存的引用计数加1

对于StrBlobPtr类的拷贝赋值,使用weak_ptr的拷贝赋值运算符来对其成员wptr进行拷贝赋值,引用计数不变,curr是内置数据类型size_t,直接赋值

练习13.8:

#include#includeusing namespace std;

class HasPtr
{
public:
	HasPtr(const std::string& s = std::string()):
		ps(new std::string(s)),i(0) { }
	//拷贝构造函数
	HasPtr(const HasPtr& hp): ps(new std::string(*hp.ps)),i(hp.i) { }
	//拷贝赋值运算符
	HasPtr& operator=(const HasPtr&);

private:
	std::string* ps;
	int i;
};

HasPtr& HasPtr::operator=(const HasPtr& ptr)
{
	delete ps;
	ps = new string(*ptr.ps);
	i = ptr.i;
	return *this;
}

你是否还在寻找稳定的海外服务器提供商?创新互联www.cdcxhl.cn海外机房具备T级流量清洗系统配攻击溯源,准确流量调度确保服务器高可用性,企业级服务器适合批量采购,新人活动首月15元起,快前往官网查看详情吧


当前题目:C++Primer13.1.2节练习-创新互联
文章网址:http://bjjierui.cn/article/dssgdh.html

其他资讯