自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(23)
  • 资源 (40)
  • 收藏
  • 关注

原创 找出满足条件数对的个数

有一个无序整数数组,其中每个数都不相同,且每个数的取值范围为[1,N]。 设计一个时间复杂度为O(N)的算法,找出满足下面两个条件的数对的个数:1) 相邻两个数的和也在这在这个数组之中;2) 这两个数本身也相邻。答: 这个数组中的数有几个特征:(1) 每个都不相同;(2) 取值范围为[1,N], 完全满足计数排序的要求。不过这里不是要排序,但是可以用相同的思想:

2012-09-21 18:37:28 1908

原创 棋牌游戏服务器架构: 详细设计(二) 应用层设计

这里的应用层,指的是CenterServer、LogonServer、LogServer、RoomServer等几个服务器,另外还包括游戏模块的设计。不过游戏模块和前4个服务器的设计很不相同。这里先说一下服务器应用的详细设计。      这上面提到的四4服务器都需要响应客户端(这里的客户端的意思是泛指)的请求,进行数据库操作,同时还要能够配置,以及显示系统运行的状态信息等。这里会采用MVC

2012-09-16 19:35:44 6204 3

原创 棋牌游戏服务器架构: 详细设计(一) 内核设计

内核的几个组件被设计成Service,也就是说这几个模块都要实现如下接口:图1  IService接口      Start方法用来启动服务。      Stop 方法用来关闭服务。      IsService 方法用于查询当前服务是否正在工作。      内核中的几个Service都不能够直接创建,Applications在使用这些Service

2012-09-16 15:03:52 8283 2

原创 棋牌游戏服务器架构: 详细设计(三) 数据库设计

主要有3类Database: ServerInfoDB,UserInfoDB和GameDB。 ServerInfoDB主要存储的是游戏列表的信息,UserInfoDB存储玩家的全局信息,而GameDB就是积分以及积分变化情况。下面分别加以描述。1. ServerInfoDB      ServerInfoDB主要存储游戏列表信息。主要有以下几个表:      1. GameTy

2012-09-16 12:35:34 12541 1

原创 棋牌游戏服务器架构: 部署

先看一下,下面这张可能的部署图吧。图1  系统布署图      在这个图中,可以看到,客户端的形式多种多样,可能是pc上的一个可执行文件,也可能是通过浏览器打开的一个网页,甚至于手机客户端。它们都通过internet连接到游戏服务器。      在这个部署中有1个CenterServer,1个LogServer,3个LogonServer和很多个RoomServer

2012-09-16 00:34:32 10847

原创 棋牌游戏服务器架构: 总体设计

首先要说明的是, 这个棋牌游戏的服务器架构参考了网狐棋牌的架构。网狐棋牌最令人印象深刻的是其稳定性和高网络负载。它的一份压力测试报告上指出:一台双核r的INTEL Xeon 2.8CPU加上2G内存和使用共享100M光纤的机子能够支持5000人同时在线游戏。      在研究其服务器框架后发现,它的网络部分确实是比较优化的。它主要采用了Windows提供的IO完成端口来实现其网络组件。本服

2012-09-15 23:23:40 24906 16

原创 棋牌游戏服务器架构: 总体设计

首先要说明的是, 这个棋牌游戏的服务器架构参考了网狐棋牌的架构。网狐棋牌最令人印象深刻的是其稳定性和高网络负载。它的一份压力测试报告上指出:一台双核r的INTEL Xeon 2.8CPU加上2G内存和使用共享100M光纤的机子能够支持5000人同时在线游戏。      在研究其服务器框架后发现,它的网络部分确实是比较优化的。它主要采用了Windows提供的IO完成端口来实现其网络组件。本服

2012-09-15 23:22:13 1495

原创 Postgresql源码分析: 动态Hash

1. 为什么需要动态hash    平常的hash,大多是下面这样一副面孔:                                                              图1         一个静态hash结构       这种Hash维护着一些桶,就是图上左边的部分,每一个桶中装着hash值相同的数据。这些具有相同hash值的数据形成一个链表。这种hash的一个最

2012-09-13 20:43:28 3618 2

原创 postgresql 堆分配器mmgr详解

mmgr是postgresql的内存管理模块,其代码分布在aset.c, mctx.c和portalmem.c这三个文件之中。这里主要分析它的堆内存的管理机制,也就是aset.c文件中的内容。      AllocSetContext是堆内存管理的主要结构,其定义如下:typedef struct AllocSetContext{ MemoryContextData

2012-09-12 00:00:44 1629 2

原创 在ubuntu上编译gcc会到的问题及解决方法

这段时间,我在用软件实现一个3D图形库,因为一些原因,想要使用c++11中的东西。被迫自己编译gcc4.7. 在这个过程中传到了很多的问题,经过不懈的努力终于是成功编译出来了,现在记录一下,算作个备份。 我是在ubuntu11.10上编译的.会到了如下错误1.configure错误,说没有gmp,什么的。2. undefined reference to `lexe

2012-02-07 09:07:49 1680

原创 一个简单的C++ Unit Test framework

C++ Unit test frame 简单

2010-12-26 12:29:00 2934

原创 用宏展开代码

C++ 宏 展开代码

2010-12-18 10:27:00 881

原创 用成员函数指针作为Callback

C++ 函数对象 callback 成员函数

2010-12-10 21:39:00 1181

原创 用成员函数指针作为Callback

C++ 函数对象 callback 成员函数

2010-12-10 21:36:00 106

原创 用成员函数指针作为Callback

C++ 函数对象 callback 成员函数

2010-12-10 21:33:00 168

原创 如何提高Brew开发的效率

<br />   我们可以细数高通给开发者带来的不便:<br />  (1)对内存没什么保护,很容易就crash啦;<br />  (2)Crash也就算了,机器都给弄死了;<br />  (3)机器死了也就死了,死了可以重启,可是重启速度超慢;<br />  (4)重启速度已经够慢了,可还得忍受连到PC机上的蜗牛速度;<br />  (5)文档不够好,比MSDN差得那不是一点点。<br /> <br />   这样下来,开发brew程序的效率就明显要比开发其他平台程序低很多。老板可不会管你这一套,他们

2010-12-06 09:36:00 700 1

原创 异步

<br />我以前很排斥异步调用,一看到异步调用就觉得特别扭:同步调用多好,一步步地执行,一异步程序的运行顺序不大直观。可是近段时间有了新的体会,觉得有时异步真有它的好处。记下来,作个备忘。<br />         先要说说那个让我觉得非得用异步调用不行的场景吧。这涉及到Command模式,为了对一个业务逻辑建模我写了一大堆Command,并把这此Command加到一个队列中。每次从这个队列中取出一个来执行。类图如下:<br /> <br /> <br />Continue函数的实现看起来像这样:<br

2010-12-06 09:07:00 501

原创 在VS中如何选择BMP工程的编译器

<br /><br />                                                                 在VS中如何选择BMP工程的编译器<br />在VS中你可以通过以下步骤选择默认编译器:Tools->Options->BrewMP,然后在ARM Compiler中选择你想使用的编译器。<br /><br />   郁闷的是,我使用的RVCT4.0没有出现在这个下拉列表中,仔细研究了一下,发现可以通过make命令行选项指定编译器:<br />右键->

2010-10-25 10:52:00 778 1

原创 再谈Singleton

再谈Singleton<br />前些时候写了一篇关于Singleton模式的使用心得,发布在这个页面:<br />http://blog.csdn.net/Li_Shugan1/archive/2010/08/09/5797873.aspx<br />后来在实际应用的过程中又出现了一些问题,其间查了一些资料,主要是Modern C++ Design,解决了Singleton在C++中会出现的问题,其方案多有借鉴Modern C++ Design中的内容,但是对析构顺序的控制,是自己的想法,自我感觉要优于这

2010-10-02 20:01:00 624

原创 How to debugging on BMP deviceHow to debugging on BMP device

<br /> Pre-Condition<br />1.       You should make sure that your device support Brew MP 1.0.2 or newer SDK.Install the Visual studio plug-in<br />1.       Open SDK Manager.<br />2.       Select Setup tab;        <br />3.       Install Visual Studio Pl

2010-09-14 11:36:00 700

原创 珍爱生命,远离野指针

 Background         估计只要是C++程序员,没有一个不痛恨这个野指针啦,而对于我们这种只能通过log来debug的程序员来说,其恨更深。Solution每次看到形如下面的代码时A* p1 = new A;A* p2 = p1;…delete p1;我都有一种想要将p2也置成空的冲动,但往往都不遂我心愿,因为在实际中p1,p2的出现实在是神出鬼没,让你防不胜防也烦不胜烦。鲁迅先生说过: 不在沉默中暴发就在沉默中灭亡。幸好,我没有灭亡,所以我要暴发。在防够了,烦饱了以后,我下定决心,要端掉这

2010-09-06 09:22:00 1139 1

原创 C风格的转型和C++多继承打架

各种Crash问题始终幽灵一般地围绕着C++程序员,,如果只是个指针没判空,那观察家也没什么,可有时程序真是挂得莫名其妙,这不,今天我就被这“死亡之吻”狠狠地吻了一口。程序结构模拟如下图,Sign继承自Object和Feature,Context中有一Feature的数组,其中装的有指向Sign的指针.Sign的申明像这个样子:classSign:public Feature,publicObjectOutput是这样耿实现的:void Context::Output(){     for(

2010-08-10 08:59:00 1008 7

原创 没有了static, Singleton怎么办?

Singleton的标准实现Singleton模式是GOF 23个模式中最简单地,也是使用地比较广泛地一个模式。其结构如下图所示:其实现大家应该都很了解,不了解的就Google一下,要多少有多少,也可以参考附件中的SingletonStd生活有时不那么美好         Singleton的C++实现依赖于静态变量的使用,在可以使用静态变量的环境中,生活是美好的,可是这个世界上也存在不支持静态变量(Brew,Symbian ,etc) 或者对静态变量的使用有诸多限制(Brew Mobile Platfor

2010-08-09 08:38:00 1689 2

在VC中使用OPENGL

要VC中使用OPENGL 入一入门

2007-10-03

Delphi数据库编程讲座

Delphi数据库 Delphi数据库

2007-09-19

OPengl教程

OpenGL 教程 OPengl教程

2007-09-19

SQL自学通

SQL 自学 SQL 自学 SQL 自学

2007-09-18

XP实用技巧

电子书,如其名。XP实用技巧

2007-09-16

auto专杀

杀auto这个毒,杀auto杀auto

2007-09-16

装电脑的书

没有!没有!没有<br>

2007-09-16

电脑超级技巧3000招

想成为电脑高手吗,先过这一关。

2007-09-16

DOS高手速成

虽然现在都是图形化界面了,还是不要忘了本了哦

2007-09-16

Ghost标准教程

没有用过Ghost的看看,有好处的。

2007-09-16

OpenGl三维图形设计

OPENGL--三维的 知道了吧

2007-09-12

BMP文件格式分析学习

BMP文件格式分析-图像学习

2007-09-09

深入浅出MFC

不用多说,大学都知道了

2007-09-09

Clock

这个是我自己编的一个桌面钟表。

2007-08-28

人工神经网络导论_-_蒋宗礼.pdf

讲神经网络的.我们的课本就是用的就是这

2007-08-24

图形图像文件格式大全.pdf

介绍图形图像格式的.

2007-08-24

解VRPTW问题的模拟退火程序

这个程序是我帮别人编的.用那有名的56个例子算过的.与世界最好解也就差那么一丁点儿

2007-08-23

漂亮的按钮类VC

这个东东是一些漂亮的按钮.

2007-08-12

属性列表控件

PsPropertyList组件是一套 类似于.NET软件中的属性编辑器的组件,利用该组件,开发人员可以很方便的对各种对象的属性进行设置和修改。组件整体界面美观、使用方便。可以和任何开发工具结合使用,能够为你的开发节省大量的代码和时间。<br> PsPropertyList采用COM技术设计开发而成,适用于VB、Delphi、VC、VS.NET以及任何支持COM的开发工具和平台;并且能够灵活的运用于WEB开发系统。<br> PsPropertyList编辑器支持大部分常用的编辑类型,具体如下:<br>1、字符编辑器<br> 即可直接编辑,也可单击按钮在弹出的窗口中录入<br>2、数值编辑器<br> 只允许录入数值的编辑器,即可使整数,也可是小数<br>3、掩码编辑器<br> 允许各种掩码的录入<br>4、颜色选择器<br> 可弹出颜色选择窗口供用户选择或者录入<br>5、文件选择器<br> 可弹出窗口供用户选择,支持各种文件格式<br>6、复选框<br> 用于是/否类型的属性<br>

2007-07-16

vim中文手册

vim中文手册, 学习vim的有力武器~

2012-02-07

Singleton,rar

解压后有3个文件夹: 1. Singleton:不使用静态变量的Singleton; 2. SingletonStd: Singleton的标准实现; 3. SingletonCheat:百度上的一个有创意的测试

2010-08-09

无线路由器密码设置模式

现在很多家庭都架设有无线网络,这已经成为一种趋势。但是在无线上网的背后隐藏着很多安全隐患问题。无线网络因为是通过电波传输数据,原则上无线网络会比有线网络更容易收到入侵,只需要在此无线网络的范围之内,就可以通过电脑进入你的无线网络。

2009-07-10

C++求职面试题集锦

涵盖了大多数C++面试题,对编程也有一些帮助。

2009-05-28

The Unified Modeling Language Reference Manual

UML参考手册,很实用的。要好好研究一下哦。

2009-05-22

Rational rose2003基本教程

Rational Rose教程,rational rose的课件,强烈推荐

2009-05-22

Inside the C++ Object Model简体中文版

侯捷先生译的,不错。就是习惯和简体中文有点不一样,不过还凑合。

2009-05-17

用C++开发brew的教程

关于brew开发的教程很少,好不容易找了一个,感觉不错,分享一下。

2009-05-17

modern C++ design简体中文版

侯捷先生翻译的,简体中文版的,超清晰,学习模板的一本好书。

2009-05-17

Inside the C++ Object Model

Addison Wesley的力作,献给C++的忠实看好者。

2009-05-16

beyond the c++ stl

是C++高手吗,想过没有要超越C++标准库,这不是妄言,看了这本书就知道啦。

2009-05-16

linux_makefile教程

学C++的,还要会写makefile。在linux下,更是如此

2009-05-16

VS使用技巧.pdf

这个是讲一些VS的使用技巧的,比较实用.要想让一个编译器充分发挥其作用,你要剖析它,看这本书就成啦

2009-01-17

STL源码剖析

侯捷先生的大作 不是扫描的 是由繁体直接转换来的

2008-05-23

Effective C++

不用多说了,学习C++不能不读的,网上电子书基本都是.chm的<br>我把它弄成pdf

2008-05-23

在VC中显示256色位图

在VC中显示256位图.

2007-10-03

清华大学C++讲稿

郑莉的那本书的配套讲稿

2007-10-03

C++ 常见问题问与答

C++ 经验 问题 对提高C++编程很有用的

2007-10-03

空空如也

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

TA关注的人

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