自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 装饰者模式

装饰者模式提供了一种灵活的方式来扩展对象的功能,而不需要修改原有的类结构。通过组合不同的装饰器,可以动态地生成各种不同的饮品,这正是该模式的强大之处。在这个例子中,我们使用奶茶作为了示例,通过装饰者模式实现了对奶茶功能的动态扩展。

2024-11-05 12:27:57 976

原创 C++——文件操作

在C++编程中,文件操作是一个重要的组成部分,它允许程序读取、写入和处理文件数据。为了执行文件操作,C++提供了一系列的类和函数,这些都包含在标准库的和头文件中。

2024-11-01 16:19:44 1280

原创 C++——继承

面向对象程序设计中最重要的一个概念是继承。继承允许我们依据另一个类来定义一个类,这使得创建和维护一个应用程序变得更容易。这样做,也达到了重用代码功能和提高执行效率的效果。当创建一个类时,您不需要重新编写新的数据成员和成员函数,只需指定新建的类继承了一个已有的类的成员即可。这个已有的类称为,新建的类称为。

2024-10-30 17:32:52 2392

原创 C++——运算符重载

运算符重载:对数据类型已有的运算符重新进行定义赋予另一种功能,以适应不同的数据类型对于内置数据类型,编译器知道如何进行运算int a = 10;int b = 20;//计算机知道如何计算但是如果是两个自定义的类相加计算机就不知道如何计算,因为加号两边不是系统内置的数据结构。

2024-10-29 14:35:26 3315

原创 进程和线程

通俗的来说程序就是存储在磁盘上的可执行文件,程序被加载到内存中开始运行时叫做进程一个程序可以被多次加载生成多个进程,进程就是处于活动状态的计算机程序。

2024-10-25 10:42:33 1073

原创 友元(friend)

生活中你的家有客厅(public)有你的卧室(private),客厅所有的可能都可以进去,卧室是是私有的只有自己能进去,但是你也可以允许你的好朋友进去。在程序里,有些私有属性也想让类外特殊的一些函数或者类进行访问,就需要用到友元友元的目的就是让一个函数或者类访问另一个类中的私有属性。

2024-10-24 13:53:46 376

原创 Linux:进程间通信——信号

信号是UNIX和Linux系统响应某些条件而产生的一个事件,接收到该信号的进程会相应地采取一些行动。信号是软中断,通常信号是由一个错误产生的。但它们还可以作为进程间通信或修改行为的一种方式,明确地由一个进程发送给另一个进程目录一、信号种类1.常见的信号2.不可靠信号和可靠信号注意二、信号捕捉三、进程休眠号四、信号集和信号阻塞五、附带数据信息的信号处理在终端输入kill -l 命令可以看到liunx支持的所有信号类型。SIGINT(2) 默认动作:终止 来之键盘的中断信号,Ctrl

2024-10-24 10:02:44 2234

原创 C++构造函数和析构函数

对象的初始化和清理是非常重要的安全问题,一个对象或者变量没有初始状态对其后果是未知的,同样一个对象或者变量使用完后没有及时清理,也会造成一定的安全问题。C++利用了构造函数和析构函数解决上述问题,这两个函数将会被编译器自动调用,完成对象的初始化和清理工作。在C++中不论一个类是否有数据成员或者成员函数,编译器都会为类提供一些默认的特殊成员函数。这种机制就要求结构体对象无论如何都要在在内存中拥有一席之地,因此当结构中没有成员时,编译器也会让结构至少拥有不使用的1字节。

2024-10-23 10:27:43 1207

原创 Linux文件操作函数

Linux/unix系统把所有的服务,设备等一切内容都抽象成文件。系统中任何对象都可以被当做文件看待,可以以文件形式访问。

2024-10-21 10:11:50 1073

原创 映射虚拟内存与物理内存的函数

映射虚拟内存与物理内存的功能涉及多个方面,主要由操作系统的内存管理子系统来实现。以下是常见的映射虚拟内存与物理内存的相关函数。7、用户空间中的代码不能直接访问内核空间的代码和数据,可以通过系统调用(API)从用户态切换到内核态后,间接地与内核交换数据。5、让用户使用虚拟地址一方面是为了安全,另一方面操作系统可以让应用程序使用比实际物理内存更大的地址空间。1.malloc函数:用于动态分配一块指定大小的内存,并返回指向这块内存的指针。返回映射的虚拟地址。创建的映射,将虚拟地址空间与物理内存解除关联。

2024-10-19 19:27:26 697

原创 Linux:2048小游戏

这是单人进行的2048小游戏。游戏的目的是逐渐增大界面上的数字,获取更高的分数,直至有数字达到2048。游戏用方向键控制(或者是wasd),每当你按下方向键,所有的数字都会向那个方向运动到头,如果有两个相同的数字碰撞在一起,则会产生一个2倍的数字。总体来说,这段代码实现了一个基本的2048游戏逻辑。它包含了棋盘展示、数字添加、拖动和合并、以及游戏结束判断等核心功能。代码结构清晰,便于理解和扩展。可以考虑的改进包括用户界面的交互性增强、游戏保存与加载功能、以及游戏难度调整等。

2024-10-19 18:59:29 774

原创 映射虚拟内存与物理内存之间的映射

虚拟内存是操作系统为每个进程提供的抽象的地址空间。每个进程都有独立的虚拟地址空间,允许它使用比实际物理内存更大的地址空间。物理内存指的是计算机实际使用的内存硬件,即RAM(随机存储器)它是用于存储正在运行的程序和数据的硬件设备,物理内存是计算机系统中的关键组成部分,他直接影响系统的性能和响应速度。

2024-10-18 16:21:02 412 1

空空如也

空空如也

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

TA关注的人

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