C++随记备忘(1)

C++的复习其实前几天就开始了。这里先记录一下前面看过的一部分内容,后续继续补充,每天更新。复习主要通过nowcode,表示感谢。

1.string后面的 ‘\0’, 在复制字符串的时候一定要注意。

2.写一个strcpy。注意事项:
a.源数组不能改动,需要加const。
b.源地址和目的地址加非空断言。
c.返回值应为目的地址。

3.传入函数的参数应该是地址,二级指针!

4.malloc后面应该跟着对于是否真正分配成功的检查以及free(p),同时最好将p = NULL,防止野指针。

5.指针未初始定义是不能使用的。

6.写宏的话,一定要把括号完全打好

7.结构体的对齐规则:
a.每个成员的起始偏移量必须为其大小的整数倍。
b.总的偏移量必须是最大的成员的大小的整数倍。

8.类的构造函数,析构函数, 赋值函数,拷贝构造函数
构造函数接受外面传进来的参数,并将其经过处理检查后赋值给类内部的private里的变量。当然,传进来的参数应该为const

析构函数一般是delete内部的参数,不接受参数

拷贝构造函数:当类内部有指针类成员变量时,一定要有拷贝构造函数。在C++中,下面三种对象需要调用拷贝构造函数:
1.对象以值传递的方式传入函数参数。
2.对象以值传递的方式从函数返回。
3.对象需要通过另一个对象初始化。
拷贝构造函数接受的参数应该是另一个相同的类other,且必须为const

赋值函数
判断自引用,即this == other时应该返回原指针。
释放原有的内存资源
在最后一定是return *this

9.static 与 const关键字
static有以下几个作用:
1.全局静态变量:static + 全局变量
未经初始化的话会被自动初始化为0,位于静态存储区。作用域仅限于定义它的文件中。
2.局部静态变量:static + 局部变量
作用域仍为局部作用域,但离开作用域后不会销毁,也无法访问,直到该函数再次被调用,且值不变。
3.静态函数:static + 函数定义
该函数只在声明它的cpp文件中可见,不会与其他cpp文件中的同名函数冲突。不要在头文件中声明static, 不要在cpp中声明非static。如果需要复用某函数,将其放在头文件。
4.类的静态成员 & 类的静态函数
静态成员可以成为类中多个对象的数据共享,而不是某一个对象的成员。对多个对象来说,静态成员只储存一处,供所有对象使用
在静态成员函数的实现中不能直接引用类中说明的非静态成员,可以引用静态成员。如果要引用非静态成员,可以通过对象来引用。

1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 、4下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合;、下载 4使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合;、 4下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。
1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.m或d论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 、1资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值