![](https://img-blog.csdnimg.cn/20201014180756738.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
C++
文章平均质量分 94
努力学c的楼下小王
这个作者很懒,什么都没留下…
展开
-
【C++】 vector讲解以及模拟
vector是C++标准库中的一个容器类,提供了动态数组的功能。它是一个模板类,可以存储各种类型的元素。vector类封装了对数组的访问、插入和删除等操作,提供了方便和高效的数组操作接口。与普通的数组相比,vector的大小是可变的,可以动态调整。它会自动处理内存分配和释放,简化了管理动态数组的复杂性。可以通过C++标准库中的头文件来包含vector类。使用vectorvector的下标索引从0开始,类似于普通数组。可以使用push_back函数在末尾插入元素。可以使用size函数获取。原创 2024-01-19 18:14:02 · 938 阅读 · 0 评论 -
【C++】string模拟
因此,当我们在下面的类构造函数中将空字符串 "" 传递给 const char* 类型的形参 str 时 , 编译器会自动将其转换为一个空字符 '\0'。一个空字符串也是一个有效的字符串,它不需要以 '\0' 的形式进行显式表示,也就是说,一个空字符串已经包含了一个空字符。浅拷贝是指在进行复制操作时,只复制对象的引用或指针,而不复制对象本身。这意味着原对象和拷贝对象共享同一份数据,深拷贝是指在进行复制操作时,完全复制对象和对象的数据,当其中一个对象修改了数据时,另一个对象也会受到影响。原创 2023-11-30 22:28:25 · 636 阅读 · 12 评论 -
【C++】const与类(const修饰函数的三种位置)
const是 C++ 中的修饰符,用于声明常量或表示不可修改的对象、函数或成员函数。我们已经了解了const基本用法,我们先进行简单的回顾:声明常量变量:使用const关键字来声明常量,一旦声明为常量,其值就不能被修改。const修饰指针:a).constint x = 5;*ptr = 10;// 错误:试图修改 const 指针所指向的值int y = 10;ptr = &y;// 正确:const 指针本身可以被修改,指向不同的地址b).constint x = 5;原创 2023-11-21 16:57:22 · 188 阅读 · 5 评论 -
【C++】内存管理
什么是内存泄漏:内存泄漏指因为疏忽或错误造成程序未能释放已经不再使用的内存的情况。内存泄漏并不是指内存在物理上的消失,而是应用程序分配某段内存后,因为设计错误,失去了对该段内存的控制,因而造成了内存的浪费。内存泄漏的危害:长期运行的程序出现内存泄漏,影响很大,如操作系统、后台服务等等,出现内存泄漏会导致响应越来越慢,最终卡死。原创 2023-11-17 21:16:10 · 207 阅读 · 5 评论 -
C++入门 第一篇(C++关键字, 命名空间,C++输入&输出)
定义命名空间,需要使用到namespace关键字,后面跟命名空间的名字,然后接一对{}即可,{}中即为命名空间的成员。// 该命名空间的名字:hardwork// 命名空间中可以定义变量/函数/类型// 命名空间中可以定义变量/函数/类型同一个工程中允许存在多个相同名称的命名空间,编译器最后会合成同一个命名空间中一个工程中的test.h和上面test.cpp中两个N1会被合并成一个int a;int b;int c;int d;原创 2023-10-14 21:04:41 · 569 阅读 · 3 评论