自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 深入理解 C++ 中的 map 和 set

本文主要讲解的便是map与set的使用,与在什么地方去使用,能使得初学者更好的理解与掌握map与set

2024-10-06 16:18:07 368

原创 理解递归与深度优先搜索(DFS)

递归和深度优先搜索(DFS)不仅是编程中的基础概念,它们之间的密切关系使得我们可以通过递归轻松实现 DFS 的功能。通过递归,程序能够自然地逐层深入解决复杂问题,而 DFS 是递归的一个具体应用。理解并掌握递归和 DFS,能够帮助我们更好地处理算法中的分治问题、图遍历以及树的操作。最重要的是,递归教会我们一种思维方式:信任程序会帮助我们完成任务。只要设定好终止条件,剩下的部分就可以交给递归去完成。通过这种方式,复杂问题的解决将变得井然有序,简单明了。

2024-10-06 15:42:44 374

原创 Linux下的环境变量通用代码与基本概念

环境变量(environment variables)一般是指在操作系统中用来指定操作系统运行环境的一些参数环境变量通常具有某些特殊的用途,在系统当中通常具有全局性。

2024-09-27 10:10:23 216

原创 智能指针的学习与应用

随着时代的发展,我们C++也在不断的进步,使用指针的需求越来越大,通常我们管理一个微小的项目,使用的指针并不是特别的多,管理起来还能得心应手,但是随着项目的不断扩大,指针使用的越来越多,管理起来便非常麻烦了,一不小心便会造成内存泄漏,使得我们的程序造成严重性的bug以及损坏。说到智能指针,那最常见的便是RAII了,RAII是一种利用对象生命周期来控制资源的简单技术,在我们构造对象时获取资源,在析构对象时清除释放资源,这样便可以使得我们不会忘记析构对象而造成内存泄漏了。1.不需要显示的释放采用这种方式,

2024-09-26 17:02:19 312

原创 Linux项目的自动化工具-make/Makefile

在linux中,项目自动化工具是一个非常重要的存在,这能侧面的取决于你能否独立创作出一个大型的项目,因此我们便大概知道了这种东西到底用在了哪里。Makefile带来的好处就是“自动化编译”,一旦写好,只需要一个make命令,整个工程完全自动编译,极大的提高了软件开发的效率,使得我们能够更快的完成一系列的任务,而其中make是一条命令,Makefile则是一个文件,两者相结合便可完成项目的自动化构建了。

2024-09-21 12:26:01 354

原创 C++的模版初解

但是模版参数列表中只有一个T,在看到第二个d1,其参数为double类型,但是前面已经固定T为int类型了。该语句不能通过编译,因为在编译的期间,当编译器看到该实例化时,推演其第一个Add,使其T推演成int,用不同类型的参数使用函数模版时,称为函数模版的实例化,函数模版实例化分为:隐式类型实例化和显示类型实例化。因此我们有两种方式解决问题:1.用户自己来强制转化 2.使得函数实例化。使用上面交换函数模版便可以随意的使用swap函数了,如下图所示。这两个都是使用了swap函数,依旧能够正常运行。

2024-04-26 17:51:19 301 4

原创 C++ 类与对象详解(中篇)

c++类与对象的解析

2024-04-11 14:18:38 447

原创 结构体的使用与说明

说到结构体,那我们今天就用一个例子来说明一下它的便捷性吧,假设你正在设计一个学生管理系统,需要存储每个学生的信息,如姓名呀、年龄和成绩,考虑到管理多个学生,在你没学结构体之前是否想到用变量来表示呢?这样的方式是不是显的很冗长,也不方便管理。此时,结构体出现在舞台上,就像是一个数据容器,可以更有序地组织信息。结构体将姓名、年龄和成绩等信息打包在一起,就像是每个学生的档案。

2023-12-28 15:54:18 910 3

原创 使用c语言操作文件

这是c语言的读写与操作文章

2023-12-24 14:20:29 393

原创 结构体的运用与说明

由此可以得出,要想即省内存又可以快速使用结构体的话,那么我们就需要对结构体内的变量使用进行精细的考虑,尽量使用可以对齐的函数,使得其浪费空间不再如此的大。

2023-12-06 15:42:52 876 1

原创 整数和浮点数在内存中的存储

这时,浮点数的指数E等于1-127(或者1-1023)即为真实值,有效数字M不再加上第⼀位的1,⽽是还 原为0.xxxxxx的⼩数。这时,浮点数就采⽤下⾯的规则表⽰,即指数E的计算值减去127(或1023),得到真实值,再将有效 数字M前加上第⼀位的1。对于64位的浮点数,最⾼的1位存储符号位S,接着的11位存储指数E,剩下的52位存储有效数字M。对于32位的浮点数,最⾼的1位存储符号位S,接着的8位存储指数E,剩下的23位存储有效数字M。反码:将原码的符号位不变,其他位依次按位取反就可以得到反码。

2023-12-03 15:44:56 366 1

原创 字符串的函数解读与详解

一.其字符串以‘\0’作为结束标志,返回的是字符串中'\0'前面出现的字符个数(不包括'\0')以上便是模拟来实现strlen的函数的一个方法,使用的是计数器的这个小技巧。以上便是对strcpy的使用,使用strcpy将hello复制到arr上。以上便是对stelen的使用,使用strlen来比较两个字符串的长度。二.会将源字符串中的 '\0' 拷⻉到⽬标空间。三.⽬标空间必须⾜够⼤,以确保能存放源字符串。二.参数指向的字符串必须要以'\0'结束。一.源字符串必须以 '\0' 结束。

2023-11-28 17:26:38 304 1

原创 C语言的分支

注释:switch语句是一种特殊形式的if...else语句,用于判断多个结果的情况,在潘多多个结果的情况时候使用switch语句会比if...else语句拥有更好的可读性。解析:循环语句就是给与其一定的条件,使其在那个条件下进行重复的工作,超出条件后停止的语句,这便叫做循环语句。注释:在正常使用代码中使用频率最高的便是for循环,使用的时候修改代码更为简便与快捷。这两种循环都是先判断,条件如果满⾜就进⼊循环,执⾏循环语句,如果不满⾜就跳出循环;达式为真,就会进⾏下⼀次,表达式为假,则不再继续循环。

2023-10-24 13:50:37 95

空空如也

空空如也

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

TA关注的人

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