自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

小风code

代码如风,常伴吾身

  • 博客(13)
  • 资源 (4)
  • 问答 (1)
  • 收藏
  • 关注

原创 数据结构 - 线性表之单链表

本系列博客 以C语言为实现语言 个人总结,请持怀疑态度参考 要点总结 头插 要考虑到插入的是第一个节点的情况 链表的删除节点的动作 要考虑到链表有没有节点 按值插入 按值插入在链表中的数据是有序的时候差有意义 排序 链表的排序一般不是以数据为单位,而是以节点为单位。排序的过程可以转化为值不停的插入的过程。即把链表拆分为两个链表,一个链表中

2017-07-31 12:44:07 311

原创 C++进阶 降低文件间的编译依存关系(接口与实现解耦合)

问题背景 有时候会发现仅仅改动了某个类的一点实现(仅仅是几句代码),在编译时却发现要编译整个工程!特别是工程有点大时,编译要等很久很久。。。只为修改一个问题,时间都浪费在等待上了。为了避免这一问题,其实是可以通过巧妙的设计来避开文件间的依赖。 形成依赖的主要缘由: 头文件依赖,A类依赖B类,B类依赖C类,结果只改动C类的任何一个数据成员,A,B都得重编译。C++在编译期间,编译器需要知道

2017-07-28 18:44:56 1663

原创 QTreeWidget中添加widget 让后清除item 引发的异常

问题背景:今天在维护几个月前的代码,发现一个诡异的BUG。。问题描述:在QTreeWidget 中 的一列中 加入一个按钮 ,在更新数据时,直接调用 clear(),让后就 引发异常了。按钮是一个new出来的指针。问题解决:在clear() 调用之前 先把 按钮的指针 delete 掉 就可以解决这个问题。问题总结:在clear()时,要把通过void QTreeWidget::setItemW

2017-07-26 19:23:17 5584

原创 设计模式之对象创建型 — prototype 原型模式

本系列博客示例代码均为C++代码,个人之言,请持怀疑态度参考。如有错误,欢迎留言指正。什么是原型模式 创建一个应用需要由很多组件构成,原型模式旨在通过给工厂传递原型实例,让后工厂通过拷贝构造这些原型来组件应用。 举个例子:在abstract模式中有贪吃蛇游戏的例子。他每实现一种模式,都需要写一个snakeFactory的子类。如果用原型模式的话则不需要创建辣么多子类,通过传递不同的原型就可

2017-07-22 15:20:23 611

原创 C++进阶 - 函数特性总结(重载与内联)

个人之言,请持怀疑态度参考。C++有重载、内联、const和virtual 四种新的机制。本篇博客主要探究重载与内联。const用发可以参考我的另外一篇文章 点击这里重载和内联机制,既可以用于全局函数也可用于类的成员函数;const 、virtual机制仅仅用于类的成员函数重载重载如何实现 通过函数的接口 - 参数 来区分。为什么不用返回值?因为返回值不可以100%保证区分。例如:

2017-07-20 19:32:09 1012

原创 设计模式之对象创建型 — Factory Method 工厂方法模式

模式说明(总结这个模式是什么) factory method 模式是一种用于创建对象的接口技术。再具体的说就是给一个类写一个创建某个类的成员函数,这个类是‘工厂’,这个函数就是‘工厂方法’。不过这个类一般是抽象类。一般被创建的类(product)也是抽象的,会有多个版本的子类。工厂方法具体要创建那个product,需要也需要在子类中实现。结构 和abstract factory 的区别

2017-07-19 16:56:56 544

原创 C++进阶 - 内存管理

内存分配方式 静态存储区分配 内存在编译的时候就已经分配好了,这块内存在程序的整个运行期间都存在。 栈内存 函数的局部变量在执行时的存储单元,函数退出时,由于栈平衡 这些内存全部释放。 堆内存 用new/delete分配的内存,内存的生存期由我们自己决定 自由存储区 使用malloc进行分配,使用free进行回收。和堆类似。 常量存储区 这是一

2017-07-17 16:23:22 1112 1

原创 Linux下的C++开发之代码的编辑与生成

代码的编辑 开发linux下的c++程序,如果命令行编辑代码显然是不现实的。其实就编辑代码而言,还是在windows上用VS编辑效率高一点。 使用VS编辑代码的思路就是在本地windows上写好代码,让后传到linux上进行编译调试 同步代码文件有两种方法,一种 就是配置SAMBA共享目录,二种是用ftp软件上传文件。第一种只能在局域网搭建,在公网搭建很麻烦(据说可以,

2017-07-16 13:57:48 1216

原创 设计模式之对象创建型 — builder 生成器模式

本系列博客示例代码均为C++代码,个人之言,请持怀疑态度参考。意图 将一个复杂对象的构建与他的表示分离,使得同样的构建过程可以创建不同的表示个人理解 生成器模式通俗的说就是构造一个对象可以分为2步,第一步是构建,第二部是表示(生成器)。构建部分是可以重用的,生成器部分则需要写不同的算法。构建部分通过与生成器的抽象接口交互,实际上并不需要太关心隐藏在接口后边的复杂的算法。实例说明 假设

2017-07-15 14:07:14 560

原创 设计模式之对象创建型 — abstract_factory 抽象工厂模式

本系列博客示例代码均为C++代码 实例说明 抽象工厂模式可以用一个很好的栗子来说明,比如在写一个贪吃蛇游戏, 这款游戏有很多中游戏模式,比如有经典模式,挑战模式。 游戏中可能有 砖块,门,墙等这些元素。当时每个游戏模式中这些元素的意义不同,比如在经典模式中,蛇不可以穿墙;而在挑战模式中蛇可以穿墙。 游戏的结构 适用性(什么情况适合这种模式) 一个系统要

2017-07-14 20:02:40 651

原创 C++ 进阶 - const 的用法及尽量使用const的好处

const关键字在C++中的用法多种多样,可以概括如下 它可以在classes外部修饰global或namespace作用域中的常量或者修饰文件、函数或者块作用域中被声明为static的对象。 它也可以修饰classes内部的静态成员和非静态成员变量。

2017-07-12 19:34:16 2111

原创 Linux学习之关机重启命令|系统运行级别|退出登陆

友情提示:关机重启命令请谨慎操作!尤其是关机命令! 一、关机重启命令(推荐使用该命令) 命令名称:shutdown 语法:shutdown [选项] 时间 -c 取消前一个关机命令 -h 关机 -r 重启

2017-07-02 23:55:51 568

原创 Linux学习之压缩解压命令

一、gzip命令 语法: 压缩 —-> $gzip[文件名] 解压—–> $gunzip[文件名] 注意:gzip 仅能压缩文件,不可以压缩目录 。在压缩后不保留原文件 压缩后的文件格式: .gz 示例: 二、bzip2命令 语法: 压缩—-> $bzip2 选项[-k] [文件名] -k 产生压缩文

2017-07-01 13:30:13 407

packTex.zip

SkyGameEngine2d是一款Windows平台基于Directx11开发的2D游戏引擎。 本引擎旨在为准备踏上游戏开发之旅的同学提供一个简单、易用、轻量的游戏基础框架。 QQ交流群 群号:498358732 加群链接:https://jq.qq.com/?_wv=1027&k=5odSA9K

2019-07-28

protobuf-c-1.2.1.tar.gz

protobuf-c-1.2.1.tar.gz c语言支持的版本 ,需要先安装protobuf 可以参考 我的博客安装 http://blog.csdn.net/qq_33775402

2017-09-26

protobuf-2.6.1.tar.gz

protobuf 源码包 安装步骤 (1)./configure (2)make (3)make check (4)make install 不会安装的可以参考我的博客

2017-09-26

Lua 5.3中文参考手册(有标签)云风译.pdf

Lua 5.3中文参考手册(有标签)云风译。有标签看起来更加方便。函数按照字母索引加了标签。存一份手册在电脑,常翻常新

2017-09-24

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

TA关注的人

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