随笔
starlee97
这个作者很懒,什么都没留下…
展开
-
【存储系列】inode
文件系统inode原创 2021-12-02 08:56:41 · 131 阅读 · 0 评论 -
C\C++开发的经典魔塔小游戏--(5)运行展示
原创 2019-08-14 10:45:49 · 2048 阅读 · 3 评论 -
C\C++开发的经典魔塔小游戏--(4)楼层控制,背景音乐,个人元素
楼层切换是游戏中必不可少的一个元素,总不能一直待在某一层,这样就无法享受通关的快感,在原本的设想中,我打算画十层地图,并且每层地图都添加一些新的素材进去,后来发现,太过繁琐,于是这个游戏就成了一个半成品。 但是主要的逻辑已经实现完毕,剩下的主要是画地图。如果哪位有精力的朋友,可以试试画他几百张地图我暂时只介绍逻辑实现。一旦碰触的切换楼层的元素,就需要刷新页面,将另一张图片打印出来,因为之前的二维...原创 2019-08-14 10:35:49 · 2398 阅读 · 0 评论 -
C\C++开发的经典魔塔小游戏--(3)主要逻辑处理,角色控制
对于一个游戏来说,最重要的是什么? 没错,是充钱,充钱,再充钱! 当然,游戏本身也要能动弹,不然钱充的不流畅。所以,我们来看看如何流畅的处理逻辑。 对于一个界面化的小游戏来说,最主要的就是角色的移动,我们通过C\C++的一个函数了处理键盘的响应,以及一个句柄API来处理一些弹窗问题。话不多说 ,上代码!userKey = _getch(); switch (userKey) { ca...原创 2019-08-14 10:10:29 · 2469 阅读 · 1 评论 -
C\C++开发的经典魔塔小游戏--(2)制作地图以及画出地图
这篇文章主要介绍如何制作以及画出地图,顺便会填充一些个人认为有趣的东西介绍给大家。C用来写图形化界面其实是一个很费力的过程,但是面向过程的语言结构,让人在做一些逻辑处理的时候更加的清晰,而不像C++一样,抽象化的方式让查看代码的人眼花缭乱,防不胜防,势必增加维护成本。但是C++更加高级的重写机制,泛型,以及STL方法,使得代码量很大的缩减,减少了开发者的劳动力输出。为了让逻辑处理更加简单易懂,本...原创 2019-08-14 09:56:10 · 4411 阅读 · 2 评论 -
C\C++开发的经典魔塔小游戏--(1)图形库的使用
最近突发奇想,想起了当年和小伙伴们一起奋斗在村里黑网吧的日子。于是乎,萌发了动手写一个下游戏的念头。这个经典的小游戏名字叫“魔塔”。大致就是你是一个骑士什么的,深入魔塔拯救大妹子的故事。设计思路还是很简单的,具体就是一些C/C++图形库的引用,将收集好的图片素材显示在界面上各个位置,然后通过接受键盘输入控制角色移动,碰到道具之后修改角色本身各项的数值来模拟打斗场景。 加入游戏背景音乐,加入其它一...原创 2019-08-14 09:36:08 · 3844 阅读 · 4 评论 -
消息收发的保护--序列化的方式
序列化 (Serialization)将对象的状态信息转换为可以存储或传输的形式的过程。在序列化期间,对象将其当前状态写入到临时或持久性存储区。以后,可以通过从存储区中读取或反序列化对象的状态,重新创建该对象。序列化使其他代码可以查看或修改,那些不序列化便无法访问的对象实例数据。确切地说,代码执行序列化需要特殊的权限:即指定了 SerializationFormatter 标志的 Securi...原创 2019-08-01 11:00:00 · 171 阅读 · 0 评论 -
简单的聊天室服务器 基于Boost asio(2)--io_service
这次我们来学习一下asio中,最主要的部分,也就是service_io.IO模型io_service对象是asio框架中的调度器,所有异步io事件都是通过它来分发处理的(io对象的构造函数中都需要传入一个io_service对象)。asio::io_service io_service;asio::ip::tcp::socket socket(io_service);在asio框架中,...原创 2019-07-30 08:57:20 · 435 阅读 · 0 评论 -
简单的聊天室服务器 基于Boost asio(1)--boost库
**最近学习了一些boost asio的知识,所以决定解读一下官方文档。继而编写一个简单的聊天服务器。 **在开始搞代码之前,得先弄清楚,这个玩意(boost asio)是干什么的。Boost.Asio是一个跨平台的、主要用于网络和其他一些底层输入/输出编程的C++库。关于网络处理已经有很多解决方案,但是Boost.Asio是目前为止最优的方案。它在2005年就被包含进Boost,然后被大...原创 2019-07-30 08:46:42 · 589 阅读 · 0 评论 -
操作系统 C/C++实现的银行家算法
银行家算法是一种最有代表性的避免死锁的算法。为实现银行家算法,每一个进程进入系统时,都要查看在运行过程中需要每种资源的最大数目,其数目应该不超过系统持有的最大资源数目。数据结构:1.可利用资源向量Available。目前系统中可用的资源队列。2.最大需求矩阵 max某个进程队友各类资源的需求。3.分配矩阵Allocation表示已分配给每个进程的资源数。4.需求矩阵 Need表...原创 2019-07-20 10:17:29 · 1591 阅读 · 0 评论 -
OS C实现的短作业优先
用C语言和数组实现的短作业优先调度 非常简单#includeusing namespace std;#define N 3struct MM{int id;//标号int index;char name[5];//进程名int cometime;//到达时间int worktime;//服务时间int starttime;//开始时间int overtime;//结束时间...原创 2019-07-20 09:36:30 · 219 阅读 · 0 评论