C++类小结

类的基本构造函数

QQ:2965614766-----初级总结。哪里不对欢迎纠正

默认构造函数 Human();
自定义构造函数 Human(int age,string name……)
拷贝构造函数 Human(const Human &other)
赋值构造函数 Human& Human::operator=(const Human& other)

自定义的构造函数:

Human(int age,string name……)
创建一个对象时,有若干个成员函数,比如:Human类里,年龄、姓名、所住地址、薪资等等;

拷贝构造函数

Human(const Human &other)
在这里插入图片描述

如上图所示:
1—此对象共有三个成员:name 、age 、 addr
2—此处需要注意的是,addr是一个指针保存的成员,所以拷贝是就不能像上面两个成员那样,直接 addr = other.addr
——首先,这是一个位拷贝(浅拷贝),会影响拷贝的结果;
——其次,析构函数(~Human())如果释放了第一个类的动态内存, addr = other.addr 这样写,会继续找第一个类的内存进行拷贝,但是第一个类已经做了delete操作了,根本找不到内存。
释放掉的内存不能再次被调用!危险操作!!! 程序直接崩掉

赋值构造函数

Human& Human::operator=(const Human</

  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 4
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值