Chinaunix首页 | 论坛 | 博客
  • 博客访问: 293877
  • 博文数量: 26
  • 博客积分: 2010
  • 博客等级: 大尉
  • 技术积分: 502
  • 用 户 组: 普通用户
  • 注册时间: 2007-05-31 22:53
文章分类

全部博文(26)

文章存档

2011年(2)

2010年(21)

2009年(2)

2008年(1)

我的朋友

分类:

2010-12-23 16:49:31

VC++ POSITION
 
VC的基本头文件AFX.h里对POSITION是这样定义的:   
  struct   __POSITION   {   };   
  typedef   __POSITION*   POSITION   
  显然这里定义了一个没有任何字段的结构体,而POSITION是这个结构体的指针。   
    
  VC在使用CList时,一些函数往往用POSITION参数,或者返回POSITION类型,其实查看CList的原代码就知道,原来CList返回的POSITION就是它的链表的一个结点指针,也就是说,在CList里有一个CNode的类定义了结点,而POSITION就是CNode*   
    
  所以说,虽然__POSITION结构体没有任何字段,但用POSITION结构体指针,仅仅用来表达CNode*指针,并且是强制转换过来的。于是POSITION被VC用为一种常见的数据类型---32位指针。
阅读(3128) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~