CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
可用分押宝游戏火热进行中... 专题改版:Java Web 专题
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  VC/MFC >  基础类

在MFC编程中,对句柄的迷惑

楼主xghost(菜鸟)2003-02-02 08:40:03 在 VC/MFC / 基础类 提问

在SDK编程中,句柄是windows对象,本身是系统级的,比如GDI对象,都可以用句柄来表示,common   control   和   control   也可以用句柄来表示,在编程时,通常经调用API的返回值获取句柄.  
   
  但是,在MFC编程中,有一句话请我迷惑:  
   
  Void   CMyApp::OnFileNew()   //"FILE->NEW"菜单命令的句柄,为什么这个类函数也  
                                                          可以叫句柄????  
  {  
  m_ptDefaultTemplate->OpenDocumentFile(NULL);  
  }  
   
  问题点数:50、回复次数:14Top

1 楼danmao(愤怒的小mao)回复于 2003-02-02 11:17:57 得分 0

谁说的是句柄?  
  Top

2 楼smilingdeng(笑笑的邓冲)回复于 2003-02-02 12:10:41 得分 10

把它看成是资源指针的代名词不就得了呀Top

3 楼HongHuer(Hello,world.)回复于 2003-02-02 15:03:38 得分 0

//"FILE->NEW"菜单命令的句柄,为什么这个类函数也  
                                                          可以叫句柄????  
   
  //没有吧,没有听说。  
  //是不是书上一不小心印错了呢?Top

4 楼liuhongyong(荒原困兽)回复于 2003-02-02 15:22:11 得分 0

那个好象不是什么句柄吧。  
   
  在SDK中一般都用句柄这个东西,可是在MFC中,好象一般用的是指向某个对象的指针吧。Top

5 楼qhgary(Gary)回复于 2003-02-03 19:50:30 得分 0

句柄不是指针,但是句柄又是windows编程中的指针。:)Top

6 楼tjroamer(Cpp高手)回复于 2003-02-03 21:49:35 得分 10

不是指针胜似指针。Top

7 楼sjrhpy(风中杨柳)回复于 2003-02-03 22:35:51 得分 0

我觉得句柄类似于DOS下的EXE中的控制块,有指针的意思,但可能还包括分配内存的位置、大小等东西。Top

8 楼XueBoy163(菜刀之恋)回复于 2003-02-04 00:08:02 得分 0

有一种说法是句柄是指向指针的指针。Top

9 楼zhourongbiao(Edward)回复于 2003-02-04 01:06:44 得分 10

我怀疑你搞错了,如果原文是英文的话,我猜测大概为:  
  handler   of……或handle……,  
  这样的话OnFileNew()的注释为:对新建文件菜单的响应。  
  Top

10 楼xghost(菜鸟)回复于 2003-02-04 13:38:42 得分 0

有好几本有关MFC编程的书都这么写,其中一本叫《MFC经典问答》的例子就是这样写的,还有BCB的书籍中也有这么写的,我怀疑是翻释有误,正如楼上的zhourongbiao(Edward)   所说的应该是响应的意思吧,因为理由有四:  
  一、   句柄是属于windows系统的,不属于某种语言  
  二、C++的对象,类函数Void   CMyApp::OnFileNew()是面向源码对象的,不属于  
          windows对象  
  三、Void   CMyApp::OnFileNew()实际为函数,编译器应把它理解为C函数    
          void   OnFileNew((CMyApp)this->...);  
  四、在网络编程中有一个概念socket在很多书籍中有多种释法,比如叫作  
          套接字、或叫插口,或叫网络接口,或叫插座,  
   
  所以我怀疑翻释有误,我觉得叫响应可能比较正确,各位有什么看法?Top

11 楼Cline(营营[无意苦争春,贯看群芳谢])回复于 2003-02-04 15:16:22 得分 10

编译者没有业务知识。  
   
  “你不会翻译,这不是你的错,你翻错,这就你的不对了”  
   
  国内译有点敬业精神好不好!!!!!!Top

12 楼danmao(愤怒的小mao)回复于 2003-02-05 17:52:15 得分 10

//处理"FILE->NEW"菜单命令  
   
  这个注释是对函数功能的说明。Top

13 楼xghost(菜鸟)回复于 2003-02-05 19:40:24 得分 0

原文可能是:   HANDLE   "FILE->NEW"   MENU   COMMAND  
  或者是:HANDLE   of   "FILE->NEW"   MENU   COMMAND  
  作者把   HANDLE   翻释成句柄了  
  我认为应该是“处理”的意思。  
   
  HDC   的英文解释如下:Handle   to   a   device   context   (DC).  
  这个Handle才可以把它翻释成句柄。Top

14 楼XueBoy163(菜刀之恋)回复于 2003-02-05 22:05:37 得分 0

同意Top

相关问题

  • 在MFC编程过程中,一个概念的迷惑
  • MFC迷惑
  • 用Winsock编程时,怎样得到进程中的SOCKET句柄
  • 问下;WINDOWS编程中为什么引入句柄
  • MFC编程问题
  • MFC编程问题。
  • ++++++++Win32编程时怎样得到对话框(dialog)中某个控件的句柄++++++++
  • VC的SDK SDK编程中,不知"句柄"与"ID号" 有何区别........
  • 句柄?
  • 句柄

关键词

  • 函数
  • 指针
  • mfc
  • 句柄
  • 编程
  • onfilenew
  • cmyapp
  • 对象
  • 翻释
  • 菜单命令

得分解答快速导航

  • 帖主:xghost
  • smilingdeng
  • tjroamer
  • zhourongbiao
  • Cline
  • danmao

相关链接

  • Visual C++类图书
  • Visual C++类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
世纪乐知(北京)网络技术有限公司 版权所有, 京 ICP 证 020026 号
北京创新乐知广告有限公司 提供技术支持
Copyright © 2000-2007, CSDN.NET, All Rights Reserved
GongshangLogo