c++学习
文章平均质量分 69
快了,不要急
这个作者很懒,什么都没留下…
展开
-
内存分区模型
我们知道 函数体中变量存放在 栈 中随着函数运行结束编译器会自动释放,其实一直有疑问这种不同变量内存分配问题。比如 全局变量 const,static,静态变量或者函数体存到哪里去了哪?看了相关资料整理记录下。原创 2024-06-03 15:53:47 · 396 阅读 · 0 评论 -
C++ 常用的三个智能指针
1、又称计数指针或共享指针,与unique_ptr不同的是它是可以共享数据的。shared_ptr原理:shared_ptr创建了一个计数器与类对象所指的内存相关联,copy则计数器加1销毁则计数器减1api为use_count()。2、和普通指针用法相似,智能指针的本质是一个模板类,对普通指针进行了封装,通过在构造函数中初始化分配内存,在析构函数中释放内存,达到自己管理内存,不需要手动管理内存的效果,避免了忘记释放内存而导致的内存泄露。是C++11。原创 2024-05-10 14:11:31 · 616 阅读 · 0 评论 -
c++参数传递
形参是实参的拷贝,改变形参的值并不会影响外部实参的值。从被调用函数的角度来说,值传递是单向的(实参->形参),赋值完毕后实参就和形参没有任何联系。原创 2024-05-09 11:34:18 · 811 阅读 · 1 评论 -
字符集与字符转换
•ASCII字符集: 只有英文、数字、符合等,占1个字节•GBK字符集: 汉字占2个字节,英文、数字占1个字节•Unicode字符集(UTF-8编码方案): 汉字占3个字节,英文、数字占1个字节注意1:字符编码时使用的字符集,和解码时使用的字符集必须一致,否则会出现乱码注意2:英文和数字一般不会出现乱码,因为很多字符集都兼容ASCII编码多字节字符集 通常指的是ANSIGB2312Shift-jisjis。原创 2024-05-08 17:12:40 · 1148 阅读 · 1 评论 -
C++中tellg和seekg
/ 得到文件指针当前指向的文件位置。//让文件指针从当前位置向文件开始方向移动10个字节。//让文件指针从当前位置向文件末方向移动10个字节。//让文件指针定位到离文件开头10个字节的位置。//让文件指针定位到文件开头。//让文件指针定位到文件末尾。原创 2024-05-07 10:14:07 · 370 阅读 · 0 评论 -
new关键字
并且再new再分配内存时会记录分配的空间大小,则delete时能正确释放内存,无需调用析构函数释放其余指针。C++释放new分配内存时带方括号delete[]和不带方括号delete的区别?用 new[] 分配的内存需要用 delete[] 释放,它们是一一对应的。将再堆中开辟的指定空间 地址 赋值给 pn。new 操作符会根据后面的数据类型来推断所需空间的大小。,方式1和2均可正常工作,不会造成能存泄露。因为:基本的数据类型对象没有。原创 2024-05-07 09:51:52 · 290 阅读 · 0 评论 -
break、return、continue区别
刚开始学习c++的时候总是分不清三个的概念,所以在实际应用的时候不知道用哪个,所以总结了下break: 立刻结束当前循环或者判断。---- if判断不是循环return: 是退出当前函数continue:结束本次循环,接着下次循环。原创 2024-03-26 12:14:25 · 286 阅读 · 1 评论