自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

  • 博客(817)
  • 资源 (135)
  • 收藏
  • 关注

原创 protobuf根据字段名修改值

【代码】protobuf根据字段名修改值。

2023-08-26 16:43:04 297

原创 C++对指针引用不会导致多次释放

【代码】C++对指针引用不会导致多次释放。

2023-07-21 18:32:50 251 2

原创 C++左移超过32位bug

int main()return 0;

2023-07-17 16:03:13 273

原创 windows环境make

PowerShell快捷键 win +X。先安装windows ubuntu。

2023-06-22 14:06:26 144

原创 linux 安装LuaJIT

如果还是报错的话 拷贝到 user/lib64。

2023-06-14 17:50:28 328

原创 version `GLIBCXX_3.4.14‘ not found

本人测试gcc-8.3.0装不上,可考虑7.30亲测可装, 4.81也测试过了,可以装但是应该不支持3.414。CentOS7升级GCC版本,解决version `GLIBCXX_3.4.21‘ not found。

2023-06-14 12:23:46 706 1

原创 【逆向编程】给16进制加上0x

【代码】【逆向编程】给16进制加上0x。

2023-05-15 20:42:51 386 1

原创 [socket]hpsocket-pull模式

PULL:收到数据立马触发OnReceive,但需要开发人员维护数据包的长度(数据缓冲区管理HP内部做了),当拼接一个完整的Pack之后,Fetch获取完整的数据包就OK了。PACK:收到数据并且拼成一个完整的Pack之后触发OnReceive,OnReceive的数据就是一个完整的包。开发人员不必关系拼包的过程,为什么要用pull模式呢,我不是所谓的别人说pull效率高,是因为包头的长度 int不是固定长度。PUSH:收到数据立马触发OnReceive,由开发人员自己实现拆包和缓冲区的管理逻辑。

2023-05-14 19:41:38 536

原创 【逆向开发】不定长int

意思就是int足够小只用一个字节去存,和protobuf的有一点差别。Protobuf数据格式解析。

2023-05-14 19:27:09 190

原创 把字节码转为十六进制码,一个字节两个十六进制,内部为字符串分配空间

【代码】把字节码转为十六进制码,一个字节两个十六进制,内部为字符串分配空间。

2023-05-14 19:22:50 189

原创 【java】eclipse

F7是跳出函数 step return,执行完当前method,然后return跳出此method。F6是step over,跳过,也就是执行本行代码,跳到下一行。全局搜索 search / ctrl + alt + h。eclipse 如何自定义快捷键?eclipse快捷键大全。F5是step into,也就是进入本行代码中执行,跳入。project ->clean 就会重新编译。eclipse重置窗口布局。自定义ctrel + P。

2023-04-18 19:41:57 472

原创 【java】基础篇

右键属性-》C:\Users\ideaction888\eclipse\java-2019-122\eclipse\eclipse.exe -data G:\XXX\server。重写概念:子类中如果创建了一个与父类中相同名称、相同返回值类型、相同参数列表的方法,只是方法体中的实现不同,以实现不同于父类的功能,这种方式被称为方法重写,又称为方法覆盖。定义:Java中,final 表示最终,也可以称为完结器,表示对象是最终形态的,不可改变的意思。它的规范标准就是,里面全部都是由全局常量和公共的抽象方法组成,

2023-04-18 19:39:43 58

转载 远程计算机或设备不接受连接

unity 账号激活不了,退出登录打不开网页,系统诊断提示远程计算机或设备不接受连接。

2023-04-07 17:11:34 84

转载 怎样把防火墙阻止的程序改为允许

如图所示,在弹出的小窗口中点击浏览,找到要添加的应用或者功能的 .exe 地址,点击添加,然后点击Windows Defender 防火墙—允许的应用窗口中的确定即可。允许的应用和功能变成了可点选的状态,点击允许其他应用按钮。许的应用和功能变成了可点选的状态,点击允许其他应用按钮。

2023-04-07 17:06:30 597

原创 Xshell 连接提示Connection established. To escape to local shell

我出现这个情况是服务器设置了白名单,然后公司的外网ip变了。

2023-04-07 13:48:11 351

原创 【奇怪bug】map的key重复问题

map这个key重复问题,杠开始是在同一个文件,同一个函数使用,不会有这个问题,在我抽出函数后出现key无法查找的问题,我一度怀疑是编码问题,后来发现编译没问题,再次怀疑是中文的问题,我改成拼音后还是没解决,发现虽然key看起来是一样的但是地址不一样,我怀疑是指针的问题,于是改成字符串解决了、、

2023-01-18 16:39:16 471

原创 vscode搜索替换根据文件夹名赛选

非常实用的功能,就不用给不同的分类建立子目录。不同的文件夹有相同的文件,可以通过这个赛选。

2023-01-12 11:19:39 228

转载 随机函数,洗牌函数 random_shuffle

【代码】随机函数,洗牌函数 random_shuffle。

2022-11-18 17:17:09 139

原创 【C++】记录一次代码优化,28490行代码优化到1401行代码

记录一次代码优化,28490行代码优化到1401行代码----优化背景,游戏需要做一个旁观功能,那么需要修改的地方有入座和广播。目前看代码是有110个麻将和牌类,代码相似度99.9%,只有一个枚举不一样(游戏id).功能是很简单,入座的协议加个字段是否旁边,广播的时候给旁边的玩家也发消息。但是涉及到一百多个游戏,我也可以每个游戏都改一遍,但是如果有bug,或者还需要修改,不是很麻烦吗。所以必须把相同的代码抽出来形成通用函数,每个游戏调用通用函数,不一样的再特殊处理。.........

2022-08-31 15:27:59 1107

原创 [C++]指针做参数的bug,双指针的应用

指针作为参数,可以修改指针指向对像的值,这个外面的也会被修改。修改指针的指向,外面的指针并不会被修改,需要用到指向指针的指针。应用场景,你需要返回2个指针,当然你也可以选择返回结构体。...

2022-08-30 15:54:12 268

原创 [C++]用类继承实现容器放不同类型

【代码】[C++]用类继承实现容器放不同类型。

2022-08-30 15:11:48 331

原创 [protobuf]删除元素

【代码】[protobuf]删除元素。

2022-08-25 11:04:55 2485 1

原创 【json&&protobuf】把json字符串转protobuf枚举

【json&&protobuf】把json字符串转protobuf枚举descriptor() 返回一个google::protobuf::EnumDescriptor的指针,利用这个指针可以方便得得到enum的litteral 值和offset 例如auto descriptor = XXX:: xxx_descriptor();auto string_1 = descriptor->FindValueByNumber(1)->value();auto number_1 = descriptor

2022-08-17 10:36:33 501

原创 【C++】文件读写

在C++中,有一个stream这个类,所有的I/O都以这个“流”类为基础的,包括我们要认识的文件I/O

2022-08-16 16:40:41 423

原创 【C++】静态函数的继承

代码】【C++】静态函数的继承。

2022-08-16 16:15:38 770

原创 stl list排序

#include#includeusing namespace std;class edge {public: edge(int weight){m_weight = weight;} int m_weight;};bool compare(edge a,edge b) { return a.m_weight > b.m_weight;}int main() { list edges; edge a(1); edge b(3);

2022-08-11 14:38:14 164

原创 vscode远程连接及调试

program": "${workspaceRoot}/svr/routing/bin/TrunkDSS1RoutingSvrd", // 将要进行调试的程序的路径。"name": "(gdb) routing", // 配置名称,将会在启动配置的下拉菜单中显示。"MIMode": "gdb", // 指定连接的调试器,可以为gdb或lldb。c_cpp_properties.cpp配置文件。...

2022-08-05 09:33:35 247 1

原创 【error】Could not resolve host: mirrors.nju.edu.cn; Unknown error“类错误的解决方法

Unknown error“类错误的解决方法。

2022-08-03 17:57:19 1772

原创 [error]Failed to start LSB: Bring up/down networking.

查看设备名称 命令 ip route。一般是这样 ifcfg-ens36。1.HWADDR地址不匹配。重启之后,网络恢复正常。

2022-08-03 13:59:50 116

原创 linux luasocket 使用

写好脚本script.lua,然后在控制台(cmd)下输入Luascript.lua,echo"/usr/local/luarocks-2.4.1文件夹已经存在"linuxluasocket编程,lua中socket通信示例。echo"测试luarocks安装lockbox"Lua在Linux上找不到LuaRocks安装的模块。&&echo"重新安装luarocks"linux下安装luarocks。怎么用命令运行lua文本文件。linux安装lua支持。...

2022-08-01 15:37:49 518

原创 【算法】数字对齐

void CPlay::ScoreTwoPaint(){if(999999ScoreTwo=999999;int PlayTwoScoreSW=ScoreTwo/100000;int PlayTwoScoreW=(ScoreTwo/10000)%10;int PlayTwoScoreQ=(ScoreTwo/1000)%10;int PlayTwoScore

2022-07-29 17:39:42 153

转载 Linux系统如何查看mysql安装路径

代码】Linux系统如何查看mysql安装路径。

2022-07-29 15:42:01 1925

原创 centos固定ip配置

参考资料,可以知道如何获取uuid。

2022-07-28 09:44:23 2800

原创 shell遍历当前目录

代码】shell遍历当前目录。

2022-07-27 15:20:25 2382

转载 【数据库面试题】redis解决跨服通信问题

Redis是独立于游戏服务器的,交由它来保存,可以防止宕机回档的问题,也可以减少游戏服务器自己维护数据所占用的内存。一般情况下仅需要取排名的前N名就可以了,这时可以利用数据库的排序功能,或者自己维护一个元素数量有限的top集合。但是有时候我们需要每一个玩家的排名,玩家的数量太多,不能利用数据库(全表排序压力太大),自己维护也会比较麻烦。Redis会对其进行排序,修改某一元素的score后,也会更新排序,在获取数据时,可以指定排序范围。更重要的是,这个排序结果会被保存起来,不用在服务器启动时重新计算。...

2022-07-15 08:46:38 181

原创 【算法】跑得快AI

代码不全,但是函数可以复用

2022-07-13 13:27:20 1746 7

转载 【C++面试题】多线程不加锁消息队列

前文跟大家一起赏析了大师作——redis的事件机制,今献丑将自己常用的一个消息循环分享给大家。笔者认为没有任何算法能完美的适配所有场景,就像前文提到的redis事件机制,它其实在处理就绪事件时是阻塞执行的。如果同时就绪的多个事件中有比较耗时的运算,那等待其他事件完成的用户体验就不太好了。本文设计的环形队列是多线程并发执行时可用的,一次往队列中写入一个事件,队列只记录事件相关数据的指针,另外使用原子操作来记录读取这个指针,迅速、安全。因为指针占空间小而且一致,所以直接用数组来保存它们。如下图所示:假设数组大小

2022-07-13 00:34:36 693

转载 【C++面试题】一个野指针拦截工具的基础原理

刷微博看到大佬分析评价了一个库对野指针拦截处理,通读之后若有所思,随即点了收藏。大概过了两周,重新翻看这条分析,发现自己并没有完整理解消化了这个野指针拦截原理,之前收藏的时候评论了原博,希望博主贴个源码地址学习一下~然而大佬并没有回复,于是自己试着用截图里的keyword去搜了下,最终还是找到了--> JJException这个库的野指针拦截处理的原理其实就是模仿Xcode的僵尸对象捕获的功能(即Zombie)正在上传…重新上传取消Zombie.png套用大佬的话:hook了dealloc,然后对该对象的内

2022-07-13 00:10:03 125

原创 【C++面试题】共享内存

共享内存的创建与释放

2022-07-12 23:56:29 365

转载 【数据库面试题】为什么 MySQL 使用 B+ 树

1.使用 B+ 树其实能够保证数据按照键的顺序进行存储,也就是相邻的所有数据其实都是按照自然顺序排列的,使用哈希却无法达到这样的效果.如果我们使用 B+ 树作为底层的数据结构,那么所有只会访问或者修改一条数据的 SQL 的时间复杂度都是 O(log n),也就是树的高度,但是使用哈希却有可能达到 O(1) 的时间复杂度,看起来是不是特别的美好。但是当我们使用如下所示的 SQL 时,哈希的表现就不会这么好了:如果我们使用哈希作为底层的数据结构,遇到上述的场景时,使用哈希构成的主键索引或者辅助索引可能就

2022-06-27 15:34:30 321

PushFramework-二进制版本

PushFramework

2017-04-03

进程崩溃自动重启

进程崩溃自动重启

2017-03-30

windows守护进程代码

windows守护进程代码 病毒一样的代码

2017-03-30

websocket++库

websocket++库 实测可用,需要boost库

2017-03-05

线程进程互斥锁

线程进程互斥锁

2017-03-01

c++ protobuf-2.5.0源码+exe

protobuf-2.5.0.tar + protoc-2.5.0-win32

2017-02-23

WSExplorer1.3_gr

WSExplorer1.3_gr 选择进程抓包,显示16进制数据

2017-02-21

二进制打包解包

打包解包

2017-02-18

打包解包注意位移归零

打包解包注意位移归零

2017-02-17

进程共享内存

进程共享内存

2017-02-15

函数做参数Pro

函数做参数Pro

2017-02-15

函数作为参数

函数作为参数

2017-02-15

WebServer-lib

WebServer可以嵌入到项目中

2017-02-14

Web socket

WebServer_test

2017-02-13

websocket-master

websocket-master

2017-02-13

libwebsockets-master

libwebsockets-master

2017-02-13

WebServer_Client

WebServer_Client

2017-02-13

sln2mak sln2mak

sln2mak 包括源码

2017-02-10

VMware-workstation-full-10.0.1-1379776-注册机

VMware-workstation-full-10.0.1-1379776-注册机

2017-02-09

mapwin+Tiled

mapwin+Tiled

2017-02-08

mysql实现的排行榜

每个排行榜分日周月总,三个类型。mysql只需要一个表

2022-05-27

skynetgame.zip

用skynet搭的一个传统框架,单线程的游戏逻辑,有点失去了skynet的思想,主要用来熟悉框架,实现了一个农场的小游戏服务器代码

2020-12-26

dpqServer.zip

网狐服务器 linxu版本 Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "CommonServer", "CommonServer", "{FC6E5723-5476-42E6-8B6A-8BE07E914C5D}" EndProject Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "bulletinserver", "AllServer\bulletinserver\bulletinserver.vcxproj", "{4C6821B2-8CC2-41A5-942D-78D

2020-10-25

dlsSqlDb2020-10-25.zip

网狐服务器数据库 需要先安装JDK_1.8.0_64bit.ex 依赖环境 再安装cn_sql_server_2016_enterprise_x64_dvd_8699450 最后安装SSMS-Setup-CHS_2016.exe 用来导入导出数据的

2020-10-25

dlmServer2020-10-25.zip

Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "服务核心", "公共组件\服务核心\ServiceCore.vcxproj", "{B1320037-89DD-4F99-A628-69DC200DFA05}" EndProject Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "协调服务器", "服务器组件\协调服务器\Correspond.vcxproj", "{0167D883-34DA-47FC-A903-6BE341FD8DC5}" EndProject Project(

2020-10-25

Websocket.zip

封装过的websocket,window的使用例子linux要自己编译库有源码 WebSocket是一种网络传输协议,可在单个TCP连接上进行全双工通信,位于OSI模型的应用层。WebSocket协议在2011年由IETF标准化为RFC 6455,后由RFC 7936补充规范。Web IDL中的WebSocket API由W3C标准化。 WebSocket使得客户端和服务器之间的数据交换变得更加简单,允许服务端主动向客户端推送数据。在WebSocket API中,浏览器和服务器只需要完成一次握手,两者之间就可以创建持久性的连接,并进行双向数据传输。

2020-10-19

libco文档以及代码.zip

libco 是腾讯开源的一个有趣的协程基础库,仅有的几个函数接口 co_create/co_resume/co_yield 再配合 co_poll, 可以支持同步或者异步的写法,如线程库一样轻松,库里面提供了socket族函数的hook, 包含如下内容: pthread风格的coroutine接口封装 事件循环以及超时机制 基于glibc-2.17源码修改的一个swapcontext高性能汇编版本 socket函数的coroutine hook,阻塞式的socket调用会直接切换为异步调用 适用场景:已有大量的同步调用网络库,例如HttpGet/Memcache_cli/...,

2020-10-17

curlpp-0.8&&curl7.6.zip

curlpp是libcurl的C++封装,由于作者本身并不使用Visual Studio(可能并不贴切,但总之作者提供的vs工程并无法直接编译通过并运行),所以在Windows下的构建并不是解压后就可以编译通过。我自己捣鼓了一个多小时,才发现原来是这么回事。于是将编译的过程和注意事项分享如下。

2019-12-05

VSCodeUserSetup-x64-1.40.0-insider.zip

visual Studio Code是一个轻量级但功能强大的源代码编辑器,可在桌面上运行,适用于Windows,macOS和Linux。它内置了对JavaScript,TypeScript和Node.js的支持,并具有丰富的其他语言(如C ++,C#,Java,Python,PHP,Go)和运行时(如.NET和Unity)的扩展生态系统。

2019-11-09

babun-1.2.0.zip

安装: (1)设置HOME环境变量为D:\app\home\fmcat (2)解压下载的文件,进入解压后的目录,找到install.bat (3)以管理员权限打开cmd窗口,然后进入到install.bat所在目录,例如:D:\app\babun_120\babun-1.2.0 d: cd D:\app\babun_120\babun-1.2.0 install.bat /t "D:\app\babun_120" 3、运行: 点击桌面的babun图标即可

2019-11-08

C++写的高效率排行榜功能 rank.zip

C++写的高效率排行榜功能,输出txt文件,也可以当小型数据库存取数据。 /******************************************** * * 排行榜管理器 * *********************************************/

2019-08-29

封装后的C++读取json库

封装后的C++读取json库,以及安全的字段取值。 JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式。 易于人阅读和编写。同时也易于机器解析和生成。 它基于JavaScript Programming Language, Standard ECMA-262 3rd Edition - December 1999的一个子集。 JSON采用完全独立于语言的文本格式,但是也使用了类似于C语言家族的习惯(包括C, C++, C#, Java, JavaScript, Perl, Python等)。 这些特性使JSON成为理想的数据交换语言。

2019-08-20

Navicat Premium 12.zip

Navicat Premium 12.zip 支持mysql 支持SQL server Navicat Premium 是一套数据库开发工具,让你从单一应用程序中同时连接 MySQL、MariaDB、MongoDB、SQL Server、Oracle、PostgreSQL 和 SQLite 数据库。它与 Amazon RDS、Amazon Aurora、Amazon Redshift、Microsoft Azure、Oracle Cloud、MongoDB Atlas、阿里云、腾讯云和华为云等云数据库兼容。你可以快速轻松地创建、管理和维护数据库。

2019-07-10

HP-Socket网络通信框架开发指南.zip

HP-Socket 是一套通用的高性能 TCP/UDP/HTTP 通信框架,包含服务端组件、 客户端组件和 Agent 组件,广泛适用于各种不同应用场景的 TCP/UDP/HTTP 通 信系统,提供 C/C++、C#、Delphi、E(易语言)、Java、Python 等编程语言接口。 HP-Socket 对通信层完全封装,应用程序不必关注通信层的任何细节;HP-Socket 提供基于事件通知模型的 API 接口,能非常简单高效地整合到新旧应用程序中。 为了让使用者能方便快速地学习和使用 HP-Socket,迅速掌握框架的设计思 想和使用方法,特此精心制作了大量 Demo 示例(如:PUSH 模型示例、PULL 模型示例、PACK 模型示例、性能测试示例以及其它编程语言示例)。

2019-01-22

HP-Socket-master.zip

HP-Socket是一套通用的高性能TCP/UDP/HTTP 通信框架,包含服务端组件、客户端组件和Agent组件,广泛适用于各种不同应用场景的TCP/UDP/HTTP通信系统,提供C/C++、C#、Delphi、E(易语言)、Java、Python等编程语言接口。HP-Socket对通信层完全封装,应用程序不必关注通信层的任何细节;HP-Socket提供基于事件通知模型的API接口,能非常简单高效地整合到新旧应用程序中。 [1] 为了让使用者能方便快速地学习和使用HP-Socket,迅速掌握框架的设计思想和使用方法,特此精心制作了大量Demo示例(如:PUSH模型示例、PULL模型示例、PACK模型示例、性能测试示例以及其它编程语言示例)。HP-Socket当前支持Windows和Linux平台。 [1]

2019-01-22

intech二面:(全是选择题)

二面:(全是选择题) 第1-4部分是智力题,找数字规律和找图形 第5-6部分是性格题 第7-6部分是逻辑题,和语文的阅读理解差不多,但是更像公务员的考试风格。

2019-01-17

md5加密解密 string Md5Encode::Encode

std::(std::string src_info) { ParamDynamic param; param.ua_ = kA; param.ub_ = kB; param.uc_ = kC; param.ud_ = kD; std::string result; const char *src_data = src_info.c_str(); char *out_data_ptr = NULL; int total_byte = FillData(src_data, strlen(src_data), &out_data_ptr); char * data_BIT_OF_GROUP = out_data_ptr; for (int i = 0; i < total_byte / (BIT_OF_GROUP / BIT_OF_BYTE); ++i) { data_BIT_OF_GROUP += i*(BIT_OF_GROUP / BIT_OF_BYTE); RotationCalculate(data_BIT_OF_GROUP, param); } if (NULL != out_data_ptr) { delete[] out_data_ptr, out_data_ptr = NULL; } result.append(GetHexStr(param.ua_)); result.append(GetHexStr(param.ub_)); result.append(GetHexStr(param.uc_)); result.append(GetHexStr(param.ud_)); return result; }

2017-09-28

yum_rpm....

python-2.7.5-48.el7.x86_64 python-iniparse-0.4-9.el7.noarch yum-3.4.3-150.el7.centos.noarch yum-metadata-parser-1.1.4-10.el7.x86_64 yum-plugin-fastestmirror-1.1.31-40.el7.noarch

2017-06-08

yum-3.4.3.tar

yum-3.4.3.tar

2017-06-07

PushFramework-string版本

PushFramework-string版本

2017-04-03

空空如也

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

TA关注的人

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