- 博客(11)
- 收藏
- 关注
原创 vectore底层实现基础学习
如果T是自定义类型会调用该类型的构造函数,一开始学习所说,内置类型没有构造函数,但此时加上模板后,内置类型有默认构造函数,析构函数。第二个参数是匿名对象,在传参过程中,给缺省参数,但是不知道到底会传什么样的数据类型的数据,所以将val初始化为匿名对象,这样编译器进行自动识别。1.Insert()实现需要注意扩容,pos没有进行位置更新,导致野指针。memcpy()是逐字节进行拷贝,如果此时T是string的话,会发生浅拷贝。第二种写法只能传int 类型的数据,利用模板传参,可以编译器自动是别。
2026-01-25 12:47:29
128
原创 STL-string
C语言中,字符串是以'\0'结尾的一些字符的集合,为了操作方便,C标准库中提供了一些str系列的库函数,但是这些库函数与字符串是分离开的,不太符合OOP的思想,而且底层空间需要用户自己管理,稍不留神可能还会越界访问。从pos位置,向后拷贝pos个位置的字符(如果pos大于剩余的字符数目,拷贝到最后一个字符)resize()---size变为10后,再放大,此时已经缩小了,就在10之后-20位置填充'\0'1.string()-----构造空的string类对象, 即空字符串。
2026-01-21 19:43:23
313
原创 C++基础知识点
(3)定义一个内置类型,并且初始化列表未对俩个成员变量没有进行初始化。aa 想要访问bb中的私有成员变量,可以在bb中将aa声明为友元类。动态申请一个int 类型的空间,并初始化为10。动态申请十个int类型的空间,并进行初始化。不创建副本,仅传递地址,开销固定且极小。利用友元函数可以访问类内的私有成员变量。动态申请一个int 类型的空间。初始化列表是每个成员变量初始化的位置。(2)实例化一个对象,不进行初始化。动态申请十个int类型的空间。,不能被用于隐式或拷贝初始化。,会创建一个新的临时。
2026-01-21 17:24:28
316
原创 C++类和对象
会造成st1中的 a 成员变量为野指针,因为拷贝之后,st1中的 a、st2中的 a 都指向同一个地址,等执行完毕,st2生命周期到达,会调用析构函数,这样st1中的 a 就指向被销毁的地址,a成为野指针。c、无参的构造函数和全缺省构造函数都称为默认构造函数,默认构造函数只能有一个,编译器自动生成的也是默认构造函数(不需要传参就可以调用的构造函数,认为是默认构造函数)因为p没有进行解引用操作,p实例化后,只有成员变量,成员函数在公共区域,该成员函数没有访问成员变量,所以不用系解引用,正常运行。
2026-01-16 10:31:03
569
原创 博客系统自动化测试报告
为“博客系统”项目实施并设计自动化测试用例,自动化测试通过Selenium编写的自动化脚本,覆盖了不同用户登录、编写博客、发布博客等核心功能模块,确保该项目正常运行。发现未登录状态下可以点击编辑博客和发布按钮,应该添加弹窗进行制止该行为的进行。
2024-11-14 15:37:59
348
原创 共享点播系统自动化测试
基于“共享视频点播系统”项目设计并实施自动化测试和接口测试,自动化测试是通过Selenium编写的自动化脚本,覆盖了视频的播放、上传、删除、编辑等功能。进一步修改Bug,完善相关功能,并添加权限设置,此系统无论什么用户都可以将视频删除,可以进一步完善该系统,确保该系统的安全性。
2024-11-09 15:52:30
470
原创 「 视频点播项目」
该项目是一个共享的视频点播项目,用户通过浏览器对该网站进行访问,每个用户拥有增删查改该网站视频的权限。系统:Ubuntu 20.04编辑器:visual studio code(vscode)编译器:gcc、g++编译脚本:MakefileC/C++、Linux、JSONCPP、MariaDB、httplib输出结果为:由于JSON版本的问题,汉字编码出现一点点问题。反序列化结果: MariaDB Server 是最流行的开源关系型数据库之一。它由 MySQL 的原始开发者制作,并保证保持开源
2024-09-13 15:52:26
1150
原创 大家一起进入C++学习的旅途
1.命名空间1.1发生命名冲突在C/C++中,变量、函数和后面要学到的类都是大量存在的,这些变量、函数和类的名称将都存在于全局作用域中,可能会导致很多冲突。在c中,同一个作用域下不可以定义同名的变量。rand 是产生随机数的函数,然而我们包括了它的头文件,然后我们还定义了一个全局变量rand他,显然会发生命名冲突。所以c++就提供了解决办法。1.2命名空间下面这个想必大家在C++代码中常见的语句。namespace是c++中的关键字,用于创建命名空间,它是用来避免命名冲突并组织代码的一种机制。
2024-03-12 20:27:06
1387
1
原创 Linux权限
在Linux环境下,文件具有可读可写可执行的功能,我们需要知道文件属性有三种,拥有者,所属组,other,在对文件授权时可以使用这三者的英文首字母进行命令的书写。增加一个文件拥有者和所属组读的权限:chmod u+r,g+r 文件名。删除一个文件拥有者和所属组读的权限:chmod u-r,g-r 文件名。增加一个文件拥有者读、写、执行的权限:chmod u+rwx 文件名。删除一个文件拥有者读、写、执行的权限:chmod u-rwx 文件名。删除一个文件拥有者写的权限:chmod u-w 文件名。
2024-01-21 21:00:44
666
1
原创 第一篇博客 start
各位同学,前辈大家好,我是一位大学生,所学专业是计算机科学与技术,在学校学习过程中,实践的次数比较少,想要通过博客记录自己学习过程中所遇到的问题。抽取课余时间学习编程知识,在寒假期间也努力学习专业知识,尽量每天都写代码,让自己更加熟练。在目前还没有目标,努力学习好当前的知识,熟练掌握知识点。每天通过上机熟悉写代码的过程,网课+刷题。熟练编程,锻炼思维习惯。
2024-01-19 19:31:38
472
3
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅