自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

徐阳的专栏

海纳百川,有容乃大!博物格致,淡泊敬诚!

  • 博客(58)
  • 资源 (8)
  • 收藏
  • 关注

原创 博客搬家至博客园

和其他很多人一样,感觉CSDN原来越不爽,博客维护起来还是很多不方便的地方,有些图片也会无缘无故的丢失找不到。故特地申请了博客园的空间,以后就搬家到博客园了,地址:www.cnblogs.com/xuyang1205。

2010-02-10 14:04:00 701

原创 山寨企业的赚钱模式兼评微星移动硬盘

说到山寨企业,估计大家都知道,最成功的当算手机行业了。我见过很多嵌入式科技公司,专门提供山寨机的解决方案,企业老板一年赚个上千万也是常事。不由的让人感慨,其实不是做什么赚钱不赚钱的事情,而是你做不做的事情,当大家都在准备看山寨手机的笑话的时候,殊不知,山寨企业已经做了多少产品,赚了多少钱,养活了,多少人了。 表面看山寨手机价钱低,貌似没什么油水可赚,但是看看市场中那些提供手机解决方案的公司就知道

2010-01-26 08:46:00 757

原创 Mercurial (HG)分布式版本控制系统

是一个轻量级的分布式版本控制系统,它以方便的控制、极强的扩展性赢得了众多开放源代码项目的青睐。本文从版本控制系统中的基本概念、操作和扩展性等方面,有侧重的介绍了 Mercurial。此外本文列出了几个其他常用的分布式版本控制系统,并和 Mercurial 作了简单的比较。通过阅读本文,读者可以了解基础的Mercurial操作,进而熟悉这个备受青睐的工具。 Mercurial 简介 Mercur

2010-01-24 10:41:00 1933

原创 学习方法感悟

学习程序这几年,自己时常一个人感悟,感悟自己曾经看过的书;曾经掌握的学习方法;曾经走过的路。几何时,曾经可以潜下心,深入的研究一个东西,孜孜不倦,也曾几何时,会因为自己的努力却得到了越来越坏的结果而曾经想过自杀。待到大学时,对于一切已经淡然。当一切已经看开的那个时刻,曾经有过情绪化的放弃、堕落之想。但是天生是那种不服输,不认错的性格,所以还算坚持没有让自己堕落。有时候感觉自己的性格和荷花有点像,出

2010-01-11 02:46:00 2419

原创 cmake生成windows下 OGRE1.7 解决方案 总结

经过本人的测试,感觉虽然Cmake生成ogre1.7解决方案虽然方便,但是对于一般人员来说,还是有些地方需要注意,结合本人的实际操作经历,总结一下。方便他人更快速的构建出程序。 注:本文多有引用http://ogre3d.cn/wike;http://ogre3d.org/wike之内容。 第一步: 获取Ogre源码。     目前,获取ogre源码的途径只有一条,就是通过svn来获取。因为

2009-12-11 02:23:00 1641

原创 博士后和民工的区别

  博士后和民工的区别 联合利华引进了一条香皂包装生产线,结果发现这条生产线有个缺陷:常常会有盒子里没装入香皂。总不能把空盒子卖给顾客啊,他们只得请了一个学自动化的博士后设计一个方案来分拣空的香皂盒。博士后拉起了一个十几人的科研攻关小组,综合采用了机械、微电子、自动化、X射线探测等技术,花了几十万,成功解决了问题。每当生产线上有空香皂盒通过,两旁的探测器会检测到,并且驱动一只机械手把空皂盒推

2009-11-26 06:06:00 700

原创 网络游戏封包基础 作者不明

截包工具: http://free.ys168.com/?shoooo    WPRO.rar      MD5: 2E1E8E48FCC78972905E4F40081B608C    IRIS.rar         MD5: 6B919165C60D83379C1F825245100545   WPE 是通过注入dll的方式hook send, recv, WSASend

2009-10-23 06:24:00 1372

原创 在NP下用OD调试游戏的方法(转)

  一、NP用户层监视原理 NP启动后通过WriteProcessMemory跟CreateRemoteThread向所有进程注入代码(除了系统进程smss.exe),代码通过np自己的LoadLibrary向目标进程加载npggNT.des。npggNT.des一旦加载就马上开始干“坏事”,挂钩(HOOK)系统关键函数如OpenProcess,ReadProcessMemory,Wri

2009-10-23 06:01:00 3220

原创 C++ 成员初始化列表

C++为类中提供类成员的初始化列表 类对象的构造顺序是这样的: 1.分配内存,调用构造函数时,隐式/显示的初始化各数据成员 2.进入构造函数后在构造函数中执行一般计算 使用初始化列表有两个原因: 1.必须这样做:         如果我们有一个类成员,它本身是一个类或者是一个结构,而且这个成员它只有一个带参数的构造函数,而没有默认构造函数,这时要对这个类成员进行初始化,就必须调

2009-10-17 12:28:00 897 1

原创 使用类成员初始化特性简化构造代码

一个新的C++0x特性称为类成员初始化,它允许您在声明数据成员时单一地初始化数据。了解如何使用此功能,以简化您的代码,减少潜在的错误,使你的代码更易读。 一般来说,初始化成员数据的工作是在构造函数里完成的。如果类有多个构造函数并且每个构造函数都分别初始化个别成员时,往往会导致重复的初始化代码分散在各个构造函数里。使用委托构造函数能在一定程序上解决了这个问题,不过有时仍然需要这样的重复初始化,从而

2009-10-17 04:41:00 620 1

原创 C++虚函数表

C++中的虚函数的作用主要是实现了多态的机制。关于多态,简而言之就是用父类型别的指针指向其子类的实例,然后通过父类的指针调用实际子类的成员函数。这种技术可以让父类的指针有“多种形态”,这是一种泛型技术。所谓泛型技术,说白了就是试图使用不变的代码来实现可变的算法。比如:模板技术,RTTI技术,虚函数技术,要么是试图做到在编译时决议,要么试图做到运行时决议。 关于虚函数的使用方法,我在这里不做过多的

2009-10-17 04:32:00 500 1

原创 ogre源码vs2008环境配置

Ogre源码在VS2008(VC9)中的配置方式 准备工作: 首先安装 1. Microsoft Visual Studio 2008(此处使用的VS2008中文版)(开发工具,不用介绍了) 2. DXSDK_Aug08 (此处我安装在D:/Program Files/Microsoft DirectX SDK (August 2008)目录下) (完全安装大约需要1G空间) 3. 源码

2009-10-11 14:44:00 951 1

转载 对攻读计算机研究生的看法

就我自己的理解,谈谈我对读研和软件学院的看法,不妥之处一笑了之即可。如果你有实际开发工作经验,感觉自己的水平和实力进入了一个高原期,迫切需要从理论上提高,那么计算机学院是唯一选择。因为计算机学院才能让你在理论上更上一层楼。软件学院从教学计划上就没有把你往这方面带。当然能不能更上一层楼最终还是完全取决于你自己。需要特别说明的是,工作经验并不一定等于开发经验,我见过很多工作2-3年的人,但是没有一

2009-10-09 12:26:00 577 1

原创 静态类型及其初始化

在C语言中有静态数据类型,声明一个静态数据类型意味着:该变量的生存周期是 静态的,即在程序的开始即分配到程序,终止时才释放。在C++中,声明一个类的静态数据成员意味着所有的实例只有该数据成员的一个拷贝。 《深入浅出MFC》这样解释: Static 成员不属于对象的一部分,而是类的一部分。所以程序可以在没有诞生对象的时候就处理此种成员变量.但必须首先初始化它。 不要把static成员变量的

2009-10-09 02:47:00 4777 1

原创 QT vs MFC(转)

本文不想假装客观公正,我只想表述我使用的经验。文中不会逐条的列举Qt和MFC各自的优缺点。我在使用MFC之前就已经使用Qt这个事实可能影响了我的客观性。 文章从实用主义的观点出发:我的老板给我一份软件的规划说明,并且让我来开发。其中一些我用Qt来开发,而另外一些我使用MFC来开发。 MFC(微软基础类库)是专门为windows设计的一个用于开发图形用户界面的类库。MFC或多或少使用了面向

2009-10-08 02:45:00 1237 1

转载 QT开发环境设置 vs2008

       VS2008下进行QT开发环境的配置,当然最简单的就是直接安装已经编译好的SDK,这样是最简单的,安装好SDK以后,再下载一个vs add-in插件,来支持在VS2008下的开发。SDK安装步骤:1 .下载QT SDK :http://qt.nokia.com/downloads-cn,下载SDK with windows,版本,然后安装;2 .下载vs2008支持插件:

2009-10-04 05:49:00 3274 3

原创 ubuntu8.10上网设置

这是我在网上下载的 我是用这个方法弄好的 你可以尝试一下 很感谢写这个的作者 卸载 Gnome Network Manager:这是必须的一步,因为不卸载的话,不过你如何设置,重启后都会被重置。这个就是Bug所在之处。 用下列命令卸载: sudo update-rc.d -f NetworkManager remove 这会禁用并且卸载Gnome Network Manage

2009-10-03 05:45:00 759 1

原创 写编译器

Technorati 标签: 编译器设计之大牛见解转自: 沈崴的日志, http://eishn.blog.163.com/blog/static/652318200961325951918/我曾经说过初学者之所以特别热衷于写编译器、写数据库、写搜索引擎、搞 XX 智能、搞 XX 引擎、写操作系统 (读 linux 源码) 之类的事情, 是因为他写不出编译器这些东西。玩不转就会觉得高深。人

2009-09-28 02:13:00 2731 4

原创 windows 7安装后无法引导xp系统解决

  首先,检查Windows xp安装盘下面是否存在三个必要的文件(ntldr/ntdetect.com/boot.ini),如果有则直接下载一个软件bcdautofix v1.0.5.exe,然后在windows 7下运行该软件,即可修复引导菜单。如果没有,一般都是缺少boot.ini文件,则自己添加一个该文件在Windows xp的安装磁盘下。里面的内容可以上网搜索boot.ini设置,然后

2009-09-22 22:19:00 650

转载 C++代码优化方法总结

 优化是一个非常大的主题,本文并不是去深入探讨性能分析理论,算法的效率,况且我也没有这个能力。我只是想把一些可以简单的应用到你的C++代码中的优化技术总结在这里,这样,当你遇到几种不同的编程策略的时候,就可以对每种策略的性能进行一个大概的估计。这也是本文的目的之所在。  一. 优化之前  在进行优化之前,我们首先应该做的是发现我们代码的瓶颈(bottleneck)在哪里。然而当你做这件事情的时候切

2009-08-06 11:52:00 534

转载 PhysX物理引擎(入门教程)

一、安装在国际上,出名的物理引擎有Havok,Vortex,ODE,Novodex,Takamak等等,其中ode是一个免费开源的物理引擎,而Novodex就是PhysX的前身,被Ageia收购之后,改名为PhysX,是一个可以免费用于非商品用途的引擎。在这里选用PhysX来作为入门教程,主要是因为,它的帮助比较丰富,而且开发包可以免费获得。关于PhysX sdk的安装.首先要进入http://s

2009-07-05 12:41:00 3104

原创 常见3D游戏物理引擎总结

1.  Havok: 老牌的君王,支持功能如下:http://www.havok.com ·         Collision Detection - including Continuous Physics™ ·         MOPP™ Technology - for compact representation of large collision meshes ·

2009-07-05 11:52:00 9573

转载 《STL之父访谈录》转载

STL之父访谈录       翻译者 : myan出处: http://www.sgi.com/technology/stl  1995年3月,dr.dobbs journal特约记者, 著名技术书籍作家al stevens采访了stl创始人alexander stepanov. 这份访谈纪录是迄今为止对于stl发展历史的最完备介绍, 侯捷先生在他的stl有关文章里推荐大家阅读这篇文章. 因此我

2009-06-15 15:09:00 556

转载 彻底了解指针数组,数组指针,以及函数指针,以及堆中的分配规则

一 :关于指针和堆的内存分配 先来介绍一下指针 : 指针一种类型,理论上来说它包含其他变量的地址,因此有的书上也叫它:地址变量。既然指针是一个类型,是类型就有大小,在达内的服务器上或者普通的PC机上,都是4个字节大小,里边只是存储了一个变量的地址而已。不管什么类型的指针,char * ,int * ,int (*) ,string * ,float * ,都是说明了本指针所指向的地址空间是什么类型

2009-06-15 14:23:00 443

转载 声明函数指针数组

#include #include //typedef void (*pf) (); void f1(){};void f2(){};int main(){    void (*pf[2]) ()=...{f1,f2};    system("pause");    return 0;} #include #include typedef void (*pf) (); void f1(

2009-06-13 11:05:00 484

转载 调试Release版本应用程序

引言如果在您的开发过程中遇到了常见的错误,或许您的Release版本不能正常运行而Debug版本运行无误,那么我推荐您阅读本文:因为并非如您想象的那样,Release版本可以保证您的应用程序可以象Debug版本一样运行。 如果您在开发阶段完成之后或者在开发进行一段时间之内从来没有进行过Release版本测试,然而当您测试的时候却发现问题,那么请看我们的调试规则1: 规则1: 经常性对开发软件进行D

2009-06-08 22:14:00 402

转载 C++多态技术

C++多态技术作者:荣耀提交者:eastvc 发布日期:2003-12-14 19:38:12原文出处:http://www.royaloo.com/articles/articles_2003/PolymorphismInCpp_content.htm摘要本文描述了C++中的各种多态性。重点阐述了面向对象的动态多态和基于模板的静态多态,并初步探讨了两种技术的结合使用。 关键词多态  继承

2009-06-01 18:11:00 335

原创 dll 和lib的调用方式

lib文件是在link的时候用 .dll文件是在Run的时候用 lib 是静态链接库 dll 是动态链接库 dll你需要和你的程序一起发布才行 lib编译后就不需要了 lib将在连接时把一些代码拷贝到你的程序代码里,所以叫做静态连接 dll是程序运行时把dll里的代码和资源加再到进程地址空间去,所以叫动态连接 动态链接与静态链接的不同之处在于:动态链接允许可执行模块(.dll 文件或 .exe 文

2009-05-26 23:22:00 1112

原创 lib和dll文件的区别和联系(2)

lib和dll lib和dll文件的区别和联系 .dll是在你的程序运行的时候才连接的文件,因此它是一种比较小的可执行文件格式,.dll还有其他的文件格式如.ocx等,所有的.dll文件都是可执行。.lib是在你的程序编译连接的时候就连接的文件,因此你必须告知编译器连接的lib文件在那里。一般来说,与动态连接文件相对比,lib文件也被称为是静态连接库。当你把代码编译成这

2009-05-26 23:16:00 423

原创 lib和dll文件的区别和联系(1)

1.什么是静态连接库,什么是动态链接库         静态链接库与动态链接库都是共享代码的方式,如果采用静态链接库,则无论你愿不愿意,lib 中的指令都全部被直接包含在最终生成的 EXE 文件中了。但是若使用 DLL,该 DLL 不必被包含在最终 EXE 文件中,EXE 文件执行时可以“动态”地引用和卸载这个与 EXE 独立的 DLL 文件。静态链接库和动态链接库的另外一个区别在于静态链接库中不

2009-05-26 23:05:00 540

转载 pImpl的原理

城门失火殃及池鱼pImpl惯用手法的运用方式大家都很清楚,其主要作用是解开类的使用接口和实现的耦合。如果不使用pImpl惯用手法,代码会像这样:       //c.hpp        #includeclass C        {        public:            void f1();        private:           

2009-05-03 16:09:00 386

原创 C++内存管理

1.对应的new和delete要采用相同的形式  下面的语句有什么错?  string *stringarray = new string[100];  ...  delete stringarray;  一切好象都井然有序——一个new对应着一个delete——然而却隐藏着很大的错误:程序的运行情况将是不可预测的。至少,stringarray指向的100个string对象中的99个不会被正确地摧

2009-04-03 18:27:00 329

转载 堆和栈的区别

堆和栈的区别 非本人作也!因非常经典,所以收归旗下,与众人阅之!原作者不祥!堆和栈的区别一、预备知识—程序的内存分配一个由c/C++编译的程序占用的内存分为以下几个部分1、栈区(stack)— 由编译器自动分配释放 ,存放函数的参数值,局部变量的值等。其操作方式类似于数据结构中的栈。2、堆区(heap) — 一般由程序员分配释放, 若程序员不释放,程序结束时可能由OS回收 。注意它与数

2009-04-03 17:26:00 394

转载 中国游戏行业存在的缺陷和出路

缺陷与出路——一个游戏开发者的反思(转自《大众软件》)blog原文:http://blog.sina.com.cn/s/blog_4a6e7dce01007rre.html  文章发表在《大众软件》23期,主要是blog上《游戏成功学》这个系列的一个整理。在此感谢大软的汪铁兄弟,对本文的修正和配图(有兴趣的读者可以看看那些配图,非常有意思)由于是发在大软上的文章,所以如果要转载的话,请

2009-02-19 17:42:00 2139

转载 调试技巧 之调用堆栈

简单介绍调试是程序开发者必备技巧。如果不会调试,自己写的程序一旦出问题,往往无从下手。本人总结使用VC经验,对调试技巧做一个粗浅的介绍。希望对大家有所帮助。今天简单的介绍介绍调用堆栈。调用堆栈在我的专栏的文章VC调试入门提了一下,但是没有详细介绍。首先介绍一下什么叫调用堆栈:假设我们有几个函数,分别是function1,function2,function3,funtion4,且f

2009-01-30 16:30:00 805

原创 SVN和VS2005配置感悟

以前写代码的时候总是随便写写,不注意代码的管理。造成了以后代码管理中的出现很多混乱状态。更改代码的时候有时候越改越杂,最后自己就快认不出来了。进入公司以后,突然发现公司用的就是svn进行版本管理。说起svn就有些惭愧。以前看过这方面的文章,也配置过,就是不知道怎么用(代码看少了啊)。到公司不得不用这个每天来比对代码,修改代码,所以用的多了自然就熟悉了。哎呀,看来自己当初真是浮躁了。    在公

2009-01-17 14:52:00 3880

转载 基于像素误差实现地形LOD的一系列相关算法

   LOD是指在实时运行状态下动态的改变物体网格的结构,以增加或减少物体的多边形数量.这种技术的目的是为了减少距离视线较远的物体的信息数据,减轻整个系统的负担.而当物体离视线越近时,该物体的多边形数量就会增多,使视觉效果不会下降.普通不规则物体的LOD是通过合并顶点,塌陷边等方式进行的.但对于有特殊结构的地形,LOD的方式有很大的改变.这几天作了一下这方面的东西.现在把关于地形LOD的相

2009-01-15 09:35:00 1202

原创 一些有用的定律

 一、墨菲定律1949年,一位名叫墨菲的空军上尉工程师,认为他的某位同事是个倒霉蛋,不经意间开了句玩笑:“如果一件事情有可能被弄糟,让他去做就一定会弄糟。”这句话迅速流传,并扩散到世界各地。在流传扩散的过程中,这句笑话逐渐失去它原有的局限性,演变成各种各样的形式,其中一个最通行的形式是:“如果坏事情有可能发生,不管这种可能性多么小,它总会发生,并引起最大可能的损失。”  这就是著名的“墨菲

2008-12-18 16:27:00 1181

转载 小程序员的大梦想---唐骏

无论是学生时代的一无所有,还是现在身为顶级职业经理人,总裁、CEO名号加身的阶段,我都敢抛开一切从头再来。我可以关闭3家小有成就的公司进入微软,从基层做起;又可以在打拼10年,从软件工程师做到微软中国最高领导者之后,选择离开微软加入盛大。每一个看似很低的起点,都是通往更高山峰的必经之路。任何时候都没有不能放下的成就。这种心态可以使人无往而不利。做老板,还是做程序员1994年,我的三家公司—

2008-12-17 01:05:00 3399

转载 MFC应用程序框架入门

 1 MFC概述顾名思意,MFC应用程序框架是以MFC作为框架基础的,以此程序框架模式搭建起来的应用程序在程序结构组织上是完全不同于以前的Win32 SDK编程方式的。自20世纪90年代初问世以来,MFC一直试图把Windows API函数封装到类库中个各个逻辑类中。MFC的这种封装并非简单地对API函数进行分组与打包,而是更多地通过类来试图实现全部的系统策略。随着越来越多系统功能的加入,MF

2008-12-16 22:09:00 1405

C语言深度剖析---面试必看

非常有深度的一本C语言剖析电子书,看过之后,基本上C语言方面的面试问题不大了。enjoy it!

2009-12-08

斗地主游戏逻辑流程图

一个斗地主游戏的逻辑结构。需要用office 的visio软件打开。适合参考

2009-11-16

C++ GUI program with QT4 chm中文

英文版的,不过比较简单易懂,里面的代码实例看起来也比较简单易懂。对这方面有要求的可以仔细看一下。

2009-09-19

中国象棋源码 ---深入浅出的AI算法详解

中国象棋源码,基于王小春《PC游戏编成--人机对弈》 版权归原作者所有 。

2009-09-19

c++primer 笔记

c++ primer 学习笔记。自学C++很有用的资料、

2008-05-27

C++程序设计

南开大学C++程序设计课件

2007-11-17

实战C++

侯捷著,一章一案式。

2007-11-17

空空如也

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

TA关注的人

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