您好,欢迎来到上海分类信息网
免费发信息

位拷贝值拷贝指的是啥?

2018-10-18 13:36:21发布81次查看ip:发布人:
位拷贝就是浅拷贝,值拷贝就是深拷贝。位拷贝拷贝的是地址,而值拷贝则拷贝的是内容。如果定义两个string对象a和b。a.m_data和b.m_data分别指向一段区域,a.m_data=windows,b.m_data=“linux;如果未重写赋值函数,将b赋给a;则编译器会默认进行位拷贝,a.m_data=b.m_data

位拷贝就是浅拷贝,值拷贝就是深拷贝。编译器会在必要的时候,自己产生默认的拷贝构造函数和赋值函数,采用的位拷贝。自己可以重新定义拷贝构造函数,要注意采用值拷贝。如果没有自定义复制构造函数,则系统会创建默认的复制构造函数,但系统创建的默认复制构造函数只会执行“浅拷贝”,即将被拷贝对象的数据成员的值一一赋值给新创建的对象,若该类的数据成员中有指针成员,则会使得新的对象的指针所指向的地址与被拷贝对象的指针所指向的地址相同,delete该指针时则会导致两次重复delete而出错。

该用户其它信息

VIP推荐

上海分类信息网-上海免费发布信息-上海新闻网