
C++
hiki321
这个作者很懒,什么都没留下…
展开
-
智能指针用法
handler 处理ownership 所有权智能指针头文件#include <memory>可以看一看源码cplusplus.com这个网站很有用smart pointers 智能指针memory leak 内存泄漏智能指针其实就是一个类使用智能指针可以很大程度上避免内存泄漏封装的函数应该尽可能地短小精悍使用指针尽量使用智能指针复用较多可以考虑模板用智能指针、迭代器还有其他比较长的类型名的时候使用auto可以节省很多时间auto e1 = std::make_sha原创 2021-07-17 13:10:22 · 162 阅读 · 0 评论 -
为什么在 C++ 中函数要先声明然后再定义呢?
你也可以不声明,直接定义。但:1、函数的作用域只是从定义的地方开始的。也就是说,在函数定义行之上,你是无法使用该函数的。而把函数的定义都放在主函数之前的话,程序会变得不清楚。所以在使用前只需用一行声明一下就可以了,明了。2、也许函数并不都是在一个文件里使用,这时候,如果再定义一遍,不仅显得罗嗦,而且使程序的维护变得麻烦,如果修改这个函数的话,需要修改每个定义。所以可以把函数声明放在一个头文件中,使用的时候,包含这个头文件就可以了。3、有时候,自己写的函数需要给别人用,比如商业用途。这样的话,不能将整原创 2020-06-11 23:36:53 · 3528 阅读 · 0 评论 -
C++vector容器浅析6.11
原创 2020-06-11 23:34:31 · 186 阅读 · 0 评论 -
C++笔记6.3
1.a=5<<2则a=20 意思是左移两位,乘42.原创 2020-06-04 16:43:54 · 238 阅读 · 0 评论 -
C++笔记6.1
1.只有十进制才有负数,八进制以0开头。2.fprintf函数只能以字符串的形式写入到文件中;fputc函数是以字符的形式写入到文件中;fwrite函数可把整形数以二进制形式存放到文件中。3.在64位系统中,sizeof(char*)=8,sizeof(char)=1。4.C++中不可以重载的运算符有?: :: . .*5.定义二维数组时,行可以缺省,列不能,而且一定要初始化。6.每个函数都可以有return,包括void类型,return可以在同一个函数中出现多次。7.为避免运算过程原创 2020-06-01 19:00:00 · 155 阅读 · 0 评论