ZqrFerrari
努力学习,开心生活
摘要: 在windows系统中,每个线程都对应一个消息队列(Message Queue),这是系统自动创建的。所以,如果想让窗口程序响应鼠标键盘操作的话,就要从这个消息队列里取得消息,然后根据消息做相应的响应函数。一般的做法是写一个消息循环(Message Loop),不断的从消息队列里提取消息、处理消息,直到程序退出。msdn给出的例子是这样写的: while( (bRet = GetMessage( ... 阅读全文
posted @ 2010-06-15 15:50 赵情融 阅读(378) 评论(0) 推荐(0) 编辑
摘要: RTTI 是“Runtime Type Information”的缩写,意思是:运行时类型信息。它提供了运行时确定对象类型的方法。本文将简略介绍 RTTI 的一些背景知识、描述 RTTI 的概念,并通过具体例子和代码介绍什么时候使用以及如何使用 RTTI;本文还将详细描述两个重要的 RTTI 运算符的使用方法,它们是 typeid 和 dynamic_cast。  和很多其... 阅读全文
posted @ 2010-06-12 18:39 赵情融 阅读(468) 评论(0) 推荐(0) 编辑
摘要: 代码Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/--#include<iostream>usingnamespacestd;voidmain(){char*c1="abc";charc2[]="abc";char*c3=(char*)mal... 阅读全文
posted @ 2010-06-09 16:04 赵情融 阅读(276) 评论(0) 推荐(0) 编辑
摘要: 首先得弄清楚同步、异步、阻塞、非阻塞的概念。  同步和异步是针对通讯的工作模式,阻塞和非阻塞是指socket的I/O操作。实际上对于socket,只存在阻塞和非阻塞,同步与异步是在程序实现上有所不同。以阻塞的方式执行recv函数,在没有收到数据前,此函数是不会返回的,所以这很容易执行函数的线程处于等待I/O上的数据状态,然后被挂起。非阻塞就不一样,执行recv时候不管有没有数据都立即返回,有数据时... 阅读全文
posted @ 2010-05-23 21:59 赵情融 阅读(275) 评论(0) 推荐(0) 编辑
摘要: std::string为library type,而int、double为built-in type,两者无法互转。 方法一,使用function template的方式将int转std::string,将double转std:string。代码 Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.C... 阅读全文
posted @ 2010-05-18 16:56 赵情融 阅读(13506) 评论(0) 推荐(1) 编辑