自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(21)
  • 收藏
  • 关注

原创 DLL的隐式调用和显式调用

这个示例包括两部分:创建DLL和从主程序调用DLL。

2024-07-14 12:14:59 470

原创 DLL总结

DLL是一种包含可由多个程序使用的代码和数据的库,这些库包含程序运行所需要的函数和资源,程序可以在运行时动态链接到这些库,其主要作用包括:(1)代码重用:DLL允许开发者将代码组织成可重用的组件,一旦一个DLL被开发并测试过,它可以被多个不同的程序使用,这节省了开发时间,实现了可重用,提升了代码质量;(2)模块化:通过将程序的功能划分为不同的DLL,可以实现代码功能的模块化,实现了功能之间的独立性,降低了代码的复杂性,易于维护;

2024-07-14 11:55:11 825

原创 QT中的QDir中的mkdir和mkpath的区别

类的方法,用于创建目录,但它们在处理多层目录的创建时有所不同。:两者都用于创建目录。这个父目录目前不存在。

2024-06-22 15:28:48 164

原创 LINUX常用的命令

(1)ls:查看当前路径下的内容,对于目录,列出该目录下的所有子目录与文件。(10)netstat anp | grep 8080:查看8080端口的占用情况;(4)touch【文件名】:若文件不存在,自动创建;(12)kill:用于删除正在执行中的程序或者工作;(11)ps:列出系统中正在运行的所有进程;(5)mkdir【目录名】:创建目录;(13)cat:查看目标文件的内容;(6)rm【文件名】:删除文件;(9)netstat:查看端口;(2)pwd:查看当前路径;(3)cd:跳转至目标路径;

2024-04-05 23:02:48 87 1

原创 C++中的数据类型转换

(1)静态转换,编译期间就完成的转换,用于将一种类型的值转换为另一种相关类型的值(比如char转int,int转double)。b. 如果目标类型指向的对象类型与源类型指向的对象类型不同,则将源类型的值转换为void*类型,然后转换为目标类型的值;该运算符可以用于去除基本类型的值的const属性,也可以用于去除指针类型的值的const属性。a. 如果目标类型指向的对象类型与源类型指向的对象类型相同,则将源类型的值转换为目标类型的值;(1)动态类型转换,转换是由运行时系统执行的,而不是由编译器执行的;

2024-02-06 16:49:10 468 1

原创 关于常用的智能指针的一些理解

【代码】关于常用的智能指针的一些理解。

2024-02-04 23:58:59 283 1

原创 对多线程中互斥锁的一些理解

(3)std::try_to_lock:这和mutex中的try_lock方法作用类似,就是在创建unique_lock时,判断资源是否已经被锁住,如果已经被锁,那就返回false,并不阻塞当前线程,如果没被锁住,则成功锁住该资源;(2)std::defer_lock:这通常用于在创建unique_lock时,并不直接锁住资源,而是需要在后续的流程里面手动去上锁,但是在上锁之后,无需手动释放,在其作用域结束时,会自动释放锁;(1)lock,锁定资源,如果资源已被其他线程锁定,则当前线程阻塞;

2024-01-25 23:10:27 449

原创 对移动构造函数的一些理解

为了应对拷贝构造所来的问题,移动构造函数实现了一种资源转发的逻辑:具体的思想就是将原对象的指针赋值给新对象,即新对象在源对象的内存空间上以源对象的数据为基础进行构造,以此实现了一个与原对象数据属性相同的新对象,之后再将源对象的指针指向空地址即可;移动构造函数提出的本意,就是为了应对拷贝构造函数所带来的内存空间占用:因为如果要通过拷贝构造函数来创建一个与源对象一模一样的对象,那么需要申请一块同样大小的内存,当源对象本身比较大的时候,这一操作将会导致内存消耗比较严重;

2024-01-25 00:59:20 347

原创 C++中模板的使用

如下是一个函数模板和类模板使用的demo, 对于函数模板来说,模板的数据类型针对函数中的入参,对于类模板来说,模板的数据类型针对类中的成员变量,具体的数据类型,由传入的数据决定。

2024-01-23 23:05:04 420 1

原创 力扣热题之螺旋矩阵

如上,输出数据为{{1,2,3,4},{5,6,7,8},{9,10,11,12}}:输出结果为: 1 2 3 4 8 12 11 10 9 5 6 7。

2024-01-23 15:41:36 354 1

原创 对于static的理解及应用

3.static修饰的局部变量,其生命周期与代码文件的运行和终止同步,不随着函数的调用结束而消亡;4.static修饰的成员变量,属于类变量,被类的多个对象共用,也可以直接通过类名调用;1.static修饰的全局变量只能在本文件中被调用,存储在全局区,全局函数也一样;6.在修饰函数时,static不能与const共用,因为const针对的是对象;2.其他文件若想调用,可以封装一个函数来调用它,在其他文件中调用该函数;5.static修饰的成员函数,只能操作静态成员变量;

2024-01-19 11:53:58 307 1

原创 力扣热题之-最长非重复子串的长度

2.在1中的操作执行时,会顺便判断新遍历到的元素是否存在于 unordered_map中,此处用到unordered_map的find方法,该方法会返回传入的key对应的迭代器,其中first代表key,second代表value,找到之后,则将非重复子串的起始下标置为,已存在的重复元素的索引和目前的起始索引取极大值的结果(避免取到已经作废的下标);1.维护一个子串起始索引和最大子串长度,循环遍历字符串,将遍历到的每个元素加到unordered_map中去,key为string中的字符,value为索引;

2024-01-19 11:46:29 367 1

原创 C++网络编程的主要函数和简单的例子

5.connect函数。

2024-01-13 23:39:15 457 1

原创 工厂模式的一些理解

3.抽象工厂模式更像是前面两者的结合,每个层级或者族类,对应一个抽象工厂,每个抽象工厂,能够创建同一层级的不同对象。工厂模式的意义,就是通过工厂来创建对象,将创建对象的方法封装在工厂中,可以不用直接调用构造函数创建对象。2.工厂方法模式:多个工厂,每种产品对应一个工厂,需要哪种产品,直接用哪种工厂来创建。1.简单工厂模式:一个工厂,根据传参不同调用不同的构造函数。

2024-01-13 22:40:23 393 1

原创 关于策略模式

【代码】关于策略模式。

2024-01-12 12:26:11 345

原创 SQL知识点

个人理解:一种有序的数据结构,可以映射到具体的数据,方便根据其快速的查找对应数据;(1)INNODB支持主键外键,事务,行级锁,不仅缓存索引还缓存数据,表空间大;(2)物理存储角度:(1)聚簇索引;(2)MYISAM不支持主键外键,事务,行级锁,只缓存索引,表空间小;(6)执行器:先判断用户权限,有权限则使用存储引擎提供的接口;优点:加快查找,降低IO成本,降低排序成本,减少CPU消耗;分类:(1)数据结构角度:B树,B+树,哈希;(7)存储引擎:存储数据,提供读写接口;(4)分析器:词法分析和语法分析;

2023-12-27 09:25:51 21 1

原创 关于C++多态的一些理解

(2)当子类继承父类时,会复制一份父类的虚函数表,同时由于其重写,则会将表中虚函数的地址替换为重写后的虚函数的地址(虚函数也存放在代码区),至于子类独有的虚函数,其地址也会加在虚函数表中;(1)当一个类包含虚函数时,相应的会有它的虚函数表(事实上是一个数组,其中存储着虚函数的地址),在类实例化为一个对象时,会产生一个虚函数表指针,该指针指向类的虚函数表;(2)动态多态:通过继承来实现,派生类继承并重写基类的虚函数,当通过基类的指针来调用该虚函数时,调用的为派生类的函数,动态多态,在运行时实现;

2023-12-09 00:28:34 29

原创 关于C++多线程的一些总结

在资源竞争激烈时,长时间的忙等待,占用CPU,造成CPU的浪费,影响系统性能,解决方法:设置自旋时间,忙等待一定时间后,释放CPU;在资源竞争不激烈时,处于自旋状态的线程对于CPU持续占有,避免了线程在阻塞和就绪之间的切换造成的资源浪费;

2023-12-09 00:12:46 28

原创 数据结构常见的排序算法

循环比较,每轮中从第一个元素开始,与其相邻元素比较,得到更小或更大的一个,交换位置至后面,再与下一个相邻元素比较,一轮比完即可获得一个极小值或者极大值放在末尾,继续重复之前的操作,直至每个数都到最终的位置。每轮中从第一个元素开始,与其相邻元素比较,得出最小值,将最小值与第一个元素交换位置,再从第二个元素开始比较,得出次小值,与第二个元素交换位置,以此类推,最终将所有元素归位。

2023-10-08 00:17:34 42 1

原创 段式存储及页式存储

有关段页式存储的一些整理

2022-12-11 18:46:10 993

原创 C++内存知识总结

C++内存知识总结

2022-11-27 14:32:49 684

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除