protobuf之我见
功能protobuf是一种将协议结构体序列化为二进制串、将二进制反序列化为协议结构体的一种协议。与xml和json不同,这是一种二进制的通信协议。protobuf几乎完全舍弃了数据结构化(元信息的删减和数据的压缩使数据远没有json那么直观),导向数据序列化。甚至数据包的大小比结构体直接以字节形式塞
mysql事务相关
事务如果一次性提交很多条相关的语句。例如删除玩家,并删除相关的数据。这些数据往往需要好多个sql语句才能完全清空。这就导致了如果访问的是一些临界区的例子(打个比方),可能会出现一些一致性的问题。理论上我们可以在驱动数据库的程序内对临界区代码加锁,但是太麻烦了。sql数据库一般会有事务功能,他相当于一
go modules
前言原先的 gopath 已经严重过时,新的go版本已经默认开启 go modules 了。本来,虽然 gopath 有很多劣势,但是我还是有路径依赖的倾向,懒得去看新标准了。但是公司的go server也用了 go modules 这就很有必要看一看了。正文总得来说 go modules 这套系统
c++17新特性
移除auto_ptr被移除由于以下原因被移除语义不清晰。auto_ptr的拷贝被改写为移动,很容易让认误解。在拷贝时原指针被赋NULL,很容易导致重大错误。风格与现代c++不符,移动操作现在已经有移动语义了。现在右值转发都使用移动语义进行,显得auto_ptr的这种拷贝移动更奇怪了。功能上,原来使用
右值、右值引用、移动语义与完美转发
leetcode contest 155 writeup
leetcode contest 154 writeup
设计模式读后感
leetcode contest 153 writeup
leetcode contest 151 writeup
我踩过的c++的坑 续
C++ 中的多返回值的实现
Effective STL 读后感
leetcode contest 121 writeup
如何重装系统
sql中的连接
在vs2017进行泛型模板编程的一些笔记
前言我周末用c++,写数据结构的作业,出于装逼炫技(这两个词好像没差)的目的,我用oop的思想,和**现代c++**的语法来写作业。其中我很自然的使用了泛型加上一些一些工程技巧。而很遗憾的的是,当中出现了非常多的一些问题,一些是由于我对于c的学习还不是很熟练,另一些则是因为编译器对于modern c
耦合与解耦
关于谷歌c++编程规范
良好的命名真的很重要谷歌命名规范一个图片大纲![图片大纲](google.png)附上我看见过的最全面的博客谷歌c++规范为啥不用匈牙利命名法早期坚定拥护匈牙利命名法的Microsoft在 .NET Framework后,已经不再建议程序员使用匈牙利命名法了。微软新的变量名称建议General Na
hexo原生无插件快速引入图片
前情提要说出来你可能不信,笔者常年不知道如何在hexo里面上传图片,导致有些图片都是网上找的,不仅不稳定,时不时还会因为盗链被加入黑名单。现在说起来可真是一段血泪史啊。于是笔者看今天天气不错(大雾),决定搞一波图片。话说现在的vs-code的markdown插件可真是奇怪他竟然把我的源代码给渲染了.