前言
提示:仅仅供自己学习,以后混口饭吃:
导师接了个c++的项目,为了以后方便干活,我哭死
一、时间
2023/12/12
二、学习内容
黑马c++ p107 - p123
主要学习类与对象那一块
1.函数分类及调用
主要总结如下:
有以下三种方法:
1,括号法,例如Person p1;(无参),Person p2(10),Person p3(p2)
2,显示法,例如Person p1=Person,Person p2=Person(10),Person p3=Person(p2)
3,隐式转换法,例如Person p2=10,Person p3=p2
同时也要注意
这是错的
2.构造与析构函数
需要总结如下:
1,构造只要与类名同名,但是不同参数个数就可以,同时要注意,编译器会自动写一个无参构造
若自己只写了有参构造,则不会给你再创建无参构造。例如Person(){},Person(int,){}
若你只写了拷贝构造函数,则无参,有参都不会给你实现
2,析构函数就是自己去对实体的清理,若自己不实现,系统则会自动去空实现。~Person(){}
3.拷贝构造函数调用时机
需要总结如下:
person(const *person){}//拷贝构造函数
值传递
值方式返回结果对象。这里注意return p1与p1的地址是不同的,因为它是拷贝的一份
4.深拷贝与浅拷贝
需要总结如下:
简而言之,深拷贝创建了原对象的完全独立副本,而浅拷贝则共享了底层存储,修改任一方都会影响另一方。在实际编程中,根据需求选择合适的拷贝方式,以避免数据相互影响。后面遇到再补充