转载
wanglang1000
这个作者很懒,什么都没留下…
展开
-
boost源码剖析之:多重回调机制signal(上)
boost源码剖析之:多重回调机制signal(上)http://blog.csdn.net/pongba/article/details/1561006 刘未鹏C++的罗浮宫(http://blog.csdn.net/pongba) boost库固然是技术的宝库,却更是思想的宝库。大多数程序员都知道如何应用command,observer等模式,却不知该如何写一个支持转载 2011-11-17 13:46:58 · 506 阅读 · 0 评论 -
学习网络编程的十个步骤
经过多年的网络编程实践之后,个人觉得初学网络编程者可以从以下几个步骤开展: 1)下载一个可以互动的学习工具,通过这个与这个工具互动,我们可以及时的学到每个api的结果如果。我个人强烈推荐一个互动好工具,即python,下载地址http://www.python.org 对于有c/c++或java基础的朋友通过一两个礼拜的时间就可以上手了,另外个人建议初学者可以学习dive int转载 2012-09-04 11:38:07 · 864 阅读 · 0 评论 -
C语言内存对齐详解(1)
一、什么是字节对齐,为什么要对齐? 现代计算机中内存空间都是按照byte划分的,从理论上讲似乎对任何类型的变量的访问可以从任何地址开始,但实际情况是在访问特定类型变量的时候经常在特定的内存地址访问,这就需要各种类型数据按照一定的规则在空间上排列,而不是顺序的一个接一个的排放,这就是对齐。 对齐的作用和原因:各个硬件平台对存储空间的处理上有很大的不同。一些平台对某些特定类转载 2013-12-31 10:19:46 · 903 阅读 · 0 评论 -
C语言内存对齐详解(2)
VC对结构的存储的特殊处理确实提高CPU存储变量的速度,但是有时候也带来了一些麻烦,我们也屏蔽掉变量默认的对齐方式,自己可以设定变量的对齐方式。VC 中提供了#pragma pack(n)来设定变量以n字节对齐方式。n字节对齐就是说变量存放的起始地址的偏移量有两种情况:第一、如果n大于等于该变量所占用的字节数,那么偏移量必须满足默认的对齐方式;第二、如果n小于该变量的类型所占用的字节数转载 2013-12-31 11:34:37 · 517 阅读 · 0 评论 -
extern "C" __declspec(dllexport) __declspec(dllimport)
前面的extern "C" __declspec(dllexport) __declspec(dllimport)都是用于函数或者变量,甚至类的声明的(可以把extern "C"放在class的前面,但是编译器会忽略掉,最后产生的还是C++修饰符,而不是C修饰符)这样的用法有个好处就是下面的代码可以在混有类的函数和变量上使用下面的宏,虽然对类不起作用:#ifdef __cplusplu转载 2013-12-31 11:47:33 · 1840 阅读 · 0 评论 -
C++中placement new操作符(经典)
placement new是重载operator new的一个标准、全局的版本,它不能被自定义的版本代替(不像普通的operator new和operator delete能够被替换成用户自定义的版本)。它的原型如下:void *operator new( size_t, void *p ) throw() { return p; } 首先我们区分下几个容易混淆的关键词:new、转载 2014-01-03 15:51:12 · 537 阅读 · 1 评论 -
C语言中 NULL和NUL的区别
NULL is a macro defined in several standard headers, 0 is an integer constant, '\0' is a character constant, and nul is the name of the character constant. All of these are not interchangeable:N转载 2014-02-24 10:11:08 · 1090 阅读 · 0 评论 -
文件内存映射CreateFileMapping和GlobalAlloc内存分配
内存映射主要有两方面的作用,其一是对大文件的内存映射处理,其二是用于进程间共享。(1)内存映射文件处理过程 首先,通过 CreateFile() 函数来创建或打开一个文件内核对象,这个对象标识了磁盘上将要用作内存映射文件的文件。 其次,通过 CreateFileMapping() 函数来为刚才创建的文件内核对象创建一个文件映射并告诉系统文件的尺寸以及访问文件的方转载 2014-04-24 11:12:51 · 1151 阅读 · 0 评论 -
WINDOWS API——OPENCLIPBOARD——剪切板
剪切板:系统维护的一个全局公共内存区域.每次只允许一个进程对其进行访问。剪切板操作方法如下:(MSDN上搜索Clipboard Operations)1.打开剪切板Bool OpenClipboard(HWND hWndNewOwner); 指定关联到打开的剪切板的窗口句柄,传入NULL表示关联到当前任务。每次只允许一个进程打开并访问。每打开一次就要关闭,否则其他转载 2014-04-24 12:07:56 · 641 阅读 · 0 评论 -
CEGUI中文输入的完美解决
CEGUI中文输入的完美解决EGUI中实现中文输入是一个老话题了,网上的资料也很多,但是实现的都不是那么完美,其中最重要的问题就是输入法界面的跟随和输入状态时对按键的屏蔽。先来说下如何把中文输入进入。先添加一个中文注入的函数://///// 中文输入注入字符 (Added by Azure)static bool ChnInjectChar(CEGUI::utf转载 2014-06-19 17:01:02 · 859 阅读 · 0 评论 -
Java HashCode
想要明白hashCode的作用,你必须要先知道Java中的集合。 总的来说,Java中的集合(Collection)有两类,一类是List,再有一类是Set。前者集合内的元素是有序的,元素可以重复;后者元素无序,但元素不可重复。那么这里就有一个比较严重的问题了:要想保证元素不重复,可两个元素是否重复应该依据什么来判断呢?这就是Object.equals方法了。但是,如果每增加一个元素就检查一转载 2012-05-13 17:10:34 · 367 阅读 · 0 评论 -
ASCII,Unicode和UTF-8
字符编码笔记:ASCII,Unicode和UTF-8文章出处: http://www.ruanyifeng.com/blog/2007/10/ascii_unicode_and_utf-8.html1. ASCII码我们知道,在计算机内部,所有的信息最终都表示为一个二进制的字符串。每一个二进制位(bit)有0和1两种状态,因此八个二进制位就可以组合出256种状态,这被称为一转载 2012-05-13 16:03:12 · 321 阅读 · 0 评论 -
C/C++中几种经典的垃圾回收算法
1.引用计数算法 引用计数(Reference Counting)算法是每个对象计算指向它的指针的数量,当有一个指针指向自己时计数值加1;当删除一个指向自己的指针时,计数值减1,如果计数值减为0,说明已经不存在指向该对象的指针了,所以它可以被安全的销毁了。可以很直观的用下面的图表示: 引用计数算法的优点在于内存管理的开销分布于整个应用程转载 2011-11-09 10:07:09 · 310 阅读 · 0 评论 -
C++中构造函数与析构函数的调用顺序
1.参考文献参考1: C++继承中构造函数、析构函数调用顺序及虚函数的动态绑定参考2: 构造函数、拷贝构造函数和析构函数的的调用时刻及调用顺序参考3: C++构造函数与析构函数的调用顺序2.构造函数、析构函数与拷贝构造函数介绍2.1构造函数构造函数不能有返回值缺省构造函数时,系统将自动调用该缺省构造函数初始化对象,缺省构造函数会将所有数据成员都初转载 2012-02-28 09:43:20 · 494 阅读 · 0 评论 -
NoSQL运动:数据库架构抉择
导读:Mike Loukides是O'Reilly传媒的内容战略副总裁,他对编程语言和UNIX系统管理非常感兴趣,著作有System Performance Tuning和Unix Power Tools。本文中,Mike Loukides提出了自己对NoSQL的精辟见解,并对现代数据库架构的方方面面进行了深入思考。在去年的一次谈话中,basho公司的CTO Justin Sheehy认为,N转载 2012-02-27 10:10:03 · 402 阅读 · 0 评论 -
(译)如何使用cocos2d1.0来给sprite添加Mask(遮罩)
免责申明(必读!):本博客提供的所有教程的翻译原稿均来自于互联网,仅供学习交流之用,切勿进行商业传播。同时,转载时不要移除本申明。如产生任何纠纷,均与本博客所有人、发表该翻译稿之人无任何关系。谢谢合作!原文链接地址:http://www.raywenderlich.com/4421/how-to-mask-a-sprite-with-cocos2d-1-0教程截图:转载 2012-03-28 11:11:54 · 1014 阅读 · 0 评论 -
VMware中ubuntu忘记密码的解决办法
在VMware中安装了ubuntu 11.04,经过了一个长假,再次登录的时候居然进不去了,一开始不知道怎样在虚拟机中进入到Grub启动界面,网上搜索了一番,按照以下步骤重新为用户设定了新密码。重启ubuntu,随即长按shift进入grub菜单;选择recovery mode,回车确认;在Recovery Menu中,选择“Root Drop to root shell prompt转载 2012-03-12 14:55:20 · 449 阅读 · 0 评论 -
Linux网络编程必看书籍推荐
首先要说讲述TCP/IP的书很多,其中有3泰书很全。分别是《TCP/IP详解》三卷本,《用TCP/IP进行网际互连》三卷本,《TCP/IP指南》+《IPv6》四卷本其中TCP/IP详解的作者还写了另外2本经典著作,《Unix环境高级编程》,《Unix网络编程》作者W.Richard Stevens个人网站 http://www.kohala.com/大师作品部部经典,可惜1999转载 2012-03-15 10:04:02 · 525 阅读 · 0 评论 -
关于回车和换行
http://hi.baidu.com/%D3%E0%C0%BCfish/blog/item/4362b6f9cfc10709b17ec573.html不知道大家用这么多年的电脑,写了这么多的程序,对换行和回车有没有一个认识本文只针对向我一样的菜鸟,若有高人路过,请随意扔蛋在说这两兄弟前,先做一个实验:我在Win7下新建左一个文本文件test.txt,然后用记事本打开输入如下内转载 2012-03-19 11:50:50 · 555 阅读 · 0 评论 -
一句话评论设计模式六大原则
原则,故名思议则是本质的意思。所谓擒贼先擒王,研究设计模式自然要先了解设计原则,所有的模式都是在这些原则的基础之上发展起来的,有的是侧重一个,有的是多个都有所涉及。看完设计模式之后,我感觉到每个模式都有这些原则的影子,还渗透着面向对象的三大属性,也觉得这些原则也都有相通之处,,正是有了他们才使我们由代码工人转为艺术家。下面我来点评一下六大原则,望各位拍砖:1、单一职责原则(Sing转载 2012-03-19 23:44:33 · 332 阅读 · 0 评论 -
解决TCP网络传输“粘包”问题
当前在网络传输应用中,广泛采用的是TCP/IP通信协议及其标准的socket应用开发编程接口(API)。TCP/IP传输层有两个并列的协议:TCP和UDP。其中TCP(transport control protocol,传输控制协议)是面向连接的,提供高可靠性服务。UDP(user datagram protocol,用户数据报协议)是无连接的,提供高效率服务。在实际工程应用中,对可靠性和效率的转载 2012-03-21 10:14:28 · 382 阅读 · 0 评论 -
游戏程序设计之渲染管道
1,顶点格式 一个场景是由物体或者模型组成,物体可以通过三角形网格进行近似的描述。网格中的三角形是物体的组成部分,通常下列属于都是描述网格中三角形:多边形,图元,网格几何体。我们可以通过指定三角形的三个顶点来描述三角形。 另外在DX中顶点还可以有颜色属性以及法线向量属性;D3D为用户提供了构建顶点格式的灵活性,换句话说就是用户可以设置顶点的组成属性。转载 2015-04-09 11:27:53 · 495 阅读 · 0 评论