首页 新闻 论坛 群组 Blog 文档 下载 读书 Tag 网摘 搜索 .NET Java 游戏 视频 人才 外包 数据库 第二书店 程序员

dychenyi/ 


共539个网摘 [ 1  2  3  4  5  6  7  8  9  10  11 ... 18 ]  上一页 | 下一页  |  访问dychenyi的个人空间

如何注册系统热键 Like "A"

dychenyi收录,时间:2008-4-10 15:59:03 | 相关网摘我也收藏

 1. 声明热键消息处理函数原型


何谓线程安全?怎么理解CSocket不是线程安全的?谢谢!!

dychenyi收录,时间:2008-4-10 14:07:24 | 相关网摘我也收藏


MFC会按线程维护一个handle map,保存下列几种句柄(及相关的C++对象):HWND、HDC、HMENU、HPEN、HBRUSH、HFONT、HBITMAP、HPALATTE、HRGN、HIMAGELIST以及SOCKET(其实,CSocket不“安全”的主要原因不在SOCKET本身,而是因为CSocket使用了HWND)。注意,这些句柄在真正的Windows眼中均是线程无关的,其中很多不但能跨线程使用,甚至可以跨进程使用。但是MFC为了包装,必须提供C++类来对他们封装,为了对这些C++类管理,MFC引进了handle map的概念(这与PCB中的Kernel Handle Table完全是两码事)。但是handle map却是每个线程互不相干,因此线程间使用这些MFC类的话,会造成handle map的混乱,轻则程序出错,重则程序崩溃。
至于为什么要使用handle map,原因也很简单:因为Windows句柄显然是唯一的,但MFC用C++类来包装Windows句柄时,如果不加任何保护措施,很可能造成两个C++对象同时与一个Windows句柄关联。设想一下,两个CWnd同时关联到一个HWND上,而两个CWnd对象各自有各自的消息映射,那么这个窗口的行为将是难以预料的。因此,用handle map来作保护,当你调用诸如Attach之类的函数时,MFC会查找handle map,如果已有对象与之关联,Attach就失败。同理,MFC还用handle map来维护GetParent、FromHandle这类函数返回的临时对象。


最简单的socket connect

dychenyi收录,时间:2008-4-10 13:43:50 | 相关网摘我也收藏

SOCKET sock = socket(AF_INET, SOCK_STREAM, 0);
SOCKADDR_IN sin;
sin.sin_family = AF_INET;
sin.sin_addr.s_addr = inet_addr("192.1.31.133");
sin.sin_port = htons(50001);

if( connect(sock, (SOCKADDR*)&sin, sizeof(sin)) != SOCKET_ERROR )
{}
else
{
AfxMessageBox("error!");
}


[新闻]〖首页推荐〗我带领大家走进,了解万恶的非主流

dychenyi收录,时间:2008-4-10 13:27:07 | 相关网摘我也收藏

狂顶。后面那首歌太强悍了。强烈建议发个单曲出来。不过我个人对所谓的非主流没什么感觉,个人的生活而已


过度依赖网络造就"宅青"? 中国闪现"闷居"一族_资讯_凤凰网

dychenyi收录,时间:2008-3-31 9:26:29 | 相关网摘我也收藏

个人的兴趣爱好,和别人无关。”32.4%的人认为“这是社会压力对青年造成的影响,可以理解。”一个“宅男博客”上有这样一段描述:宅,是一种生活状态。为他人浪费时间不值得,创造生活的乐趣在于你是引导潮流的领跑者!生命只有一次,我们要做自己真正感受深刻的事情!

宅男宅女们自娱自乐,父母却很少能容忍他们整天待在家里。在老一辈人眼里,每天按时出门上班的才叫工作,有空做做运动、逛逛街、和朋友打牌聊天才叫生活。而这些,在互联网时代足不出户就能办到,不再是必须出门的理由。

在广大宅人经常流连忘返的网络论坛上,“怎样才能宅得让父母不


C 超级高手成长之路

dychenyi收录,时间:2008-3-27 17:58:24 | 相关网摘我也收藏

条款12:对STL容器线程安全性的期待现实一些


偶前几天的C 面试题 printf("%d,%d",*ptr,*(++ptr)); sizeof(struct)

dychenyi收录,时间:2008-3-25 17:05:36 | 相关网摘我也收藏

偶前几天的C++面试题(省略了编程题),有兴趣的朋友看看!!!!一同分享,呵呵


华为笔试的一道题, 指针 printf("%d,%d",*ptr,*(++ptr)); printf("%d,%d",*ptr,*(ptr++));

dychenyi收录,时间:2008-3-25 16:56:42 | 相关网摘我也收藏

1,在pritf语句中,表达式从右向左计算。

2,++ptr是在printf执行过程之中计算的。

3,ptr++是在printf执行完成以后计算的。

4,以下四个表达式执行之后结果一样的:

*(ptr++)=*(ptr++)+123;
*(++ptr)=*(++ptr)+123;
*(++ptr)=*(ptr++)+123;
*(ptr++)=*(++ptr)+123;

5,下面这个表达式和上面的四个执行之后结果是不一样的,:


private, public, protected 访问标号的访问范围

dychenyi收录,时间:2008-3-25 14:55:03 | 相关网摘我也收藏

private, public, protected 访问标号的访问范围


《高质量C 编程指南》中,一个关于虚函数与函数重载的问题,为什么会是这个结果呢 C/C / C 语言 - CSDN社区 community.csdn.net

dychenyi收录,时间:2008-3-24 10:32:32 | 相关网摘我也收藏

如果 f()是隐藏现象,则按照p的静态类型发生调用,指针p的静态类型就是声明时的类型。例中pb 是Base * ,pd是Derived *


C 中的虚函数(virtual function)-太平洋电脑网Pconline-[C/C ]

dychenyi收录,时间:2008-3-24 10:17:06 | 相关网摘我也收藏

  虚函数只能借助于指针或者引用来达到多态的效果,如果是下面这样的代码,则虽然是虚函数,但它不是多态的:



共539个网摘 [ 1  2  3  4  5  6  7  8  9  10  11 ... 18 ]  上一页 | 下一页

dychenyi/相关标签



网站简介广告服务网站地图帮助联系方式诚聘英才English 问题报告
北京创新乐知广告有限公司 版权所有 京 ICP 证 070598 号
Copyright © 2000-2008, CSDN.NET, All Rights Reserved