标准C++中的句柄和MFC中句柄中句柄的区别?该如何解决

标准C++中的句柄和MFC中句柄中句柄的区别?
刚刚看了C++   PRIMER   4   中句柄的概念,里面讲到标准C++中的句柄是存储和管理基类的指针,由于积累指针可以指向派生类,所以可以通过它来获得动态行为而用户无需关心指针处理。
记得MFC里面讲到的句柄只是一个内核资源的唯一标志。
那么这两者在本质上到底有何差别呢?是不是MFC中的句柄就是用标准C++中的句柄的思想实现的呢?
回答的朋友不妨把问题说的详细一些!

------解决方案--------------------
MFC里面讲到的句柄只是一个内核资源的唯一标志。//对
C++中的句柄是存储和管理基类的指针。//这可能是翻译用词,引起你的混淆,C++里只有类,
//和对象的概念,这里所说的句柄应该是类对象的指针。
由于积累指针可以指向派生类。//这里指的是C++的多态。
------解决方案--------------------
所谓标准C++中的句柄,其实也是类,一种封装类的类,以达到掩盖类中细节的目的
Windows句柄跟上述的很类似,因为我们不能直接知道Windows句柄里面是什么东西,他们的实现机制差异就不得而知了
------解决方案--------------------
MFC中的句柄的概念与操作系统联系联系更紧密些,其实质也是个指针或索引。比Mutex是种内核资源,对每一个Mutex都有一个相应的结构体来描述。这个结构体的具体域我们可能不得而知,但应该具有引用计数,安全,引用者列表吧,总之,这个结构体可以完整的描述一个互斥量,其实这个内核资源就是这个结构体,MFC中句柄就是能够找到这个结构体的标识.其实不论是在语言中还是在操作系统中,句柄都是个索引,通过它,我们能更快的找到别的东西,比如存储一个数据结构的一块内存,或别得东西。
------解决方案--------------------
lz指的应该是c指针的问题和mfc中句柄的问题吧
在mfc中句柄可以形象的理解为一个对象的把柄,像窗口,画刷,抓住他们的把柄,
就像揪住了他们的小辫子一样
你就可以很容易控制他们了
深入分析的话,句柄其实就是指向指针的指针,
因为WINDOWS系统对内存中的应用程序是总是动态的管理,
所以应用程序在内存中的地址即指针常会发生变化,
这用内存管理中就用到了指向指针的指针即句柄的方法
------解决方案--------------------
【REF】

句柄和指针都是地址,不同在于:
1,句柄所指的可以是一个很复杂的结构,并且很有可以是与系统有关的,比如说上面所说的线程的句柄,它指向的就是一个很类或者结构,他和系统有很密切的关系,当一个线程由于不可预料的原因,而终止时在系统就可以回它所占用的资料,如CPU,内存等等,反过来想可以知道,这个句柄中的某一些项,是与系统进行交互的。由于Windows系统,是一个多任务的系统,它随时都可能要分配内存,回收内存,重组内存。
2,指针它也可以指向一个复杂的结构,但是通常是用户定义的,所以的必需的工作都要用户完成,特别是在删除的时候。
但在VC++6.0中也有一些指针,它们都是处理一些小问题才用的,如最常见的字符的指针,它也是要用户处理的如果你动态分配了内存;但是Cstring就不要用户处理了,它其实是VC++中的一个类,所以的操作都由成员函数完成,产生(分配)由构造函数,删除(回收)由析构函数完成。