MFC typedef与define

原创 2013年12月02日 14:36:57

其中 两者定义的时候的方向是也是相反

typedef int * pint;
#define PINT int *

那么:
const pint p ;//p不可更改,但p指向的内容可更改
const PINT p ;//p可更改,但是p指向的内容不可更改

#define 是宏命令,在编译前,由预处理器做替代,如同文本编辑的替代命令,把程序中的所有遇到的词,全部替代。

#define PINT int*
就是把所有的词 PINT 替换成 int * ,替换完毕再编译。

typedef int* pint; 是语句,由编译器在编译过程中编译处理。
int* x; 和
pint x; 的声明是等价的

typedef int* pint;
long int* x; 声明是可以的,但
long pint x; 不可以。

#define PINT int*
long int* x; 声明是可以的,
long PINT x; 也是可以的。
从上两种情况对比,你就知道两者的区别

long,short,signed,unsigned 叫 “Modifiers”

const,volatile 叫 “Qualifiers"

const pint p; 锁定 pint 类型,锁定初始化后的指针地址。

const PINT p; 预处理为
const int * p;  锁定初始化后的指针指向的值。

令人迷糊的define和typedef

1.刚接触MFC时会看到很多陌生的数据类型,关键字.一开始会特别反感,不适应.比如UINT,DWORD.不过你右击一点它们选择跳转到定义.就会发现有这样的定义: typedef unsigned i...
  • weiwenhp
  • weiwenhp
  • 2011年11月22日 17:03
  • 2992

typedef 的用法,typedef写在类里面的作用

平时,我meng
  • dalleny
  • dalleny
  • 2014年09月03日 01:19
  • 4924

typedef和define的详细区别

原文链接:http://developer.51cto.com/art/201104/256060.htm typedef是一种在计算机编程语言中用来声明自定义数据类型,配合各种原有数据类型...
  • zhangbest2009
  • zhangbest2009
  • 2015年07月21日 11:03
  • 568

常见的typedef、define、const、static使用辨析

define用法: #define为预处理命令,定义的实质:只是为后面的常量定义一个别名。该声明的结果没有具体类型,不分配内存空间。在编译时,用到别名的地方,编译器会自动把该别名替换为相应常量。每次...
  • u012160319
  • u012160319
  • 2015年01月14日 16:07
  • 851

MFC中令人迷糊的define和typedef

1.刚接触MFC时会看到很多陌生的数据类型,关键字.一开始会特别反感,不适应.比如UINT,DWORD.不过你右击一点它们选择跳转到定义.就会发现有这样的定义: typedef unsigned i...
  • u010308862
  • u010308862
  • 2015年06月02日 16:42
  • 247

数据结构一:企业级顺序存储底层库封装

数据结构是程序员的内功,从基础做起,同时数据结构也是我大三被一个小企业侮辱过的学科,也是我大学期间最头疼的学科,今天做个总结以表示自己很认真的学过,代码都可以在企业级开发中使用,后续会有常用数据结构的...
  • szqsdq
  • szqsdq
  • 2015年07月29日 16:28
  • 660

第十三周项目二 Kruskal算法的验证

/* * Copyright (c) 2015, 烟台大学计算机与控制工程学院 * All rights reserved. * 文件名称: main.cpp,graph.h,graph.cpp * ...
  • gkq_comeon
  • gkq_comeon
  • 2015年11月24日 21:30
  • 371

typedef重命名的意义

官方的定义我就不抄过来了,它的作用是“给已知数据类型重命名”。详细的用法和例子我不解释了,我也不是太懂,记不住。 今天看源码的时候,突然明白其意义,为啥要给数据类型取别名?就是为了让数据类型和系统代码...
  • xzongyuan
  • xzongyuan
  • 2014年02月28日 16:34
  • 963

typedef 的用法,typedef写在类里面的作用

平时,我meng
  • dalleny
  • dalleny
  • 2014年09月03日 01:19
  • 4924

C语言的typedef指令

C语言的typedef指令 typedef工具是一个高级数据特性,利用typedef可以为某一类型自定义名称。它与#define有3个不同点:(1)与#define不同,typedef创建的符号名只...
  • libing403
  • libing403
  • 2017年06月18日 01:21
  • 1474
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:MFC typedef与define
举报原因:
原因补充:

(最多只允许输入30个字)