MFC自定义的数据类型
2008-11-01 15:19
246 查看
一.MFC中自定义的数据类型对照表
二.MFC/windows[/b]基本数据类型的定义[/b][/b]
windef.h
Abstract:Basic Windows Type Definitions ,included in windows.h
winnt.h
Abstract:This module defines the 32-Bit Windows types and constants that are
defined by NT, but exposed through the Win32 API.
afx.h
Abstract:This is a part of the Microsoft Foundation Classes C++ library.
#define FALSE 0 afx.h
#define TRUE 1 afx.h
#define NULL 0 afx.h
typedef void VOID winnt.h
//[/b]短整型[/b]typedef unsigned short
typedef unsigned short USHORT; windef.h
typedef unsigned short WORD; windef.h
typedef unsigned short wchar_t
typedef short SHORT; winnt.h
//[/b]整型[/b]typedef int
typedef int BOOL; 取值为TRUE or FALSE windef.h
typedef int INT; windef.h
typedef unsigned int UINT; 定义一个新的Win32数据类型,它会把一个参数强制转换成Windows3.x应用中的16位值 或Win32应用中的32位值windef.h
//[/b]长整型[/b]typedef long[/b]
typedef unsigned long ULONG; windef.h
typedef unsigned long DWORD; windef.h
typedef DWORD COLORREF; windef.h
typedef long LONG; winnt.h
typedef __int64 LONGLONG; winnt.h
typedef unsigned __int64 ULONGLONG; winnt.h
typedef ULONGLONG DWORDLONG; winnt.h
//[/b]浮点型[/b]
typedef float FLOAT; windef.h
typedef double DOUBLE; wtypes.h
//[/b]字符类型[/b]typedef char[/b]
typedef char CHAR/CCHAR; winnt.h
typedef unsigned char UCHAR; windef.h
typedef unsigned char BYTE; windef.h
typedef wchar_t WCHAR; 声明一个16位的UNICODE字符,用来表示世界上所有已知的书写语言的符号winnt.h
typedef WCHAR TCHAR, *PTCHAR; winnt.h
//[/b]指向[/b]字符串[/b]的指针类型LP*[/b]
/*以下为winnt.h的部分内容*/
// UNICODE (Wide Character) types[/b]
[/b]
typedef wchar_t WCHAR; // wc, 16-bit UNICODE character
typedef __nullterminated WCHAR *NWPSTR, *LPWSTR, *PWSTR;
typedef __nullterminated CONST WCHAR *LPCWSTR, *PCWSTR;
// ANSI (Multi-byte Character) types[/b]
typedef CHAR *PCHAR, *LPCH, *PCH;
typedef __nullterminated CHAR *NPSTR, *LPSTR, *PSTR;
指向Windows字符串(以空字符结束)的32位指针char*
typedef __nullterminated CONST CHAR *LPCSTR, *PCSTR;
指向Windows常字符串(以空字符结束)的32位指针const char*
// Neutral ANSI/UNICODE types and macros[/b]
#ifdef UNICODE // r_winnt
#ifndef _TCHAR_DEFINED
typedef WCHAR TCHAR, *PTCHAR;
typedef WCHAR TBYTE , *PTBYTE ;
#define _TCHAR_DEFINED
#endif /* !_TCHAR_DEFINED */
typedef LPWSTR PTSTR, LPTSTR;
指向Windows字符串(以空字符结束)的32位指针,用于移植到双字节字符集
LPTSTR For Unicode platforms,it is LPWSTR,For ANSI and DBCS platforms,it is LPSTR
typedef LPCWSTR PCTSTR, LPCTSTR;
指向Windows常字符串(以空字符结束)的32位指针const char* ,用于移植到双字节字符集
LPCTSTR For Unicode platforms,it is LPCWSTR,For ANSI and DBCS platforms,it is LPCSTR
typedef LPWSTR LP;
#define __TEXT(quote) L##quote // r_winnt
/*以上为winnt.h的部分内容*/
typedef WCHAR OLECHAR; wtypes.h
typedef /* [wire_marshal] */ OLECHAR *BSTR; unsigned short* wtypes.h
//[/b]函数参数、返回值类型[/b]
typedef UINT_PTR WPARAM; 窗口函数或callback函数的一个参数,在Win16中是16-bit,在Win32中是32-bit windef.h
typedef LONG_PTR LPARAM; 32位窗口函数或callback函数的一个参数windef.h
typedef LONG_PTR LRESULT; 32位作为窗口函数或callback函数的返回值windef.h
//[/b]指向函数的指针类型[/b]__stdcall
typedef int (WINAPI *PROC)();PROC指向回调函数的指针
typedef LRESULT (CALLBACK* WNDPROC)(HWND, UINT, WPARAM, LPARAM);
WNDPROC指向在应用程序中定义的窗口过程的指针
#define CALLBACK __stdcall windef.h
#define WINAPI __stdcall windef.h
#define WINAPIV __cdecl windef.h
#define APIENTRY WINAPI windef.h
#define APIPRIVATE __stdcall windef.h
#define PASCAL __stdcall windef.h
typedef void far *LPVOID; 指向任意类型的指针windef.h
//Windows[/b]句柄类[/b]型[/b]HANDLE32位的无符号整数,用于标识[/b]
窗口句柄 HWND
实例句柄 HINSTANCE
光标句柄 HCURSOR [/b]
图标句柄 HICON
位图句柄 HBITMAP
菜单句柄 HMENU
设备描述句柄 HDC
钢笔句柄 HPEN
画刷句柄 HBRUSH
字体句柄 HFONT
文件句柄 HFILE
【参考】
URL:http://www.programfan.com/blog/article.asp?id=33809,《MFC/windows基本数据类型》,phunxm
数据类型 | 意义 |
FAR | 对应于far |
NEAR | 对应于near |
CONST | 对应于const |
UINT | 32位无符号整型,对应于unsigned int |
BYTE | 8位无符号整型,对应于unsigned char |
WORD | 16位无符号整型,对应于unsigned short int |
DWORD | 32位无符号长整型,对应于unsigned long int |
SHORT | 短整型 |
LONG | 32位长整型,对应于long |
LONGLONG | 64位长整型 |
FLOAT | 浮点型,对应于float |
BOOL | Boolean值(TRUE or FALSE即1 或 0) |
CHAR | Windows字符 |
VOID | 任意类型 |
BSTR | 32位字符指针 |
LPCSTR | 32位字符串指针,指向一个常数字符串 |
LPSTR | 32位字符串指针 |
LPCTSTR | 32位字符串指针,指向一个常数字符串,用于移植到Unicode集 |
LPTSTR | 32位字符串指针,用于移植到Unicode集 |
LPVOID | 32位指针,指向一个未定义类型的数据 |
LPARAM | 32位消息参数,作为窗口函数或回调函数(call back)的参数 |
LPRESULT | 32位数值,作为窗口函数或回调函数的返回值 |
WPARAM | 16位或32位数值,作为窗口函数或回调函数的参数 |
COLORREF | 32位数值,代表一个颜色值 |
PROC | 指向回调函数的指针 |
WNDPROC | 32位指针,指向一个窗口函数 |
HANDLE | 对象句柄,其他还有HPEN、HWND、HCURSOR、HDC、HFILE等 |
LPCRECT | 32位指针,指向一个RECT结构的常量 |
POSITION | 一个数值,代表collection对象(例如数组或链表)中的元素位置,常使用于MFC collection classes |
windef.h
Abstract:Basic Windows Type Definitions ,included in windows.h
winnt.h
Abstract:This module defines the 32-Bit Windows types and constants that are
defined by NT, but exposed through the Win32 API.
afx.h
Abstract:This is a part of the Microsoft Foundation Classes C++ library.
#define FALSE 0 afx.h
#define TRUE 1 afx.h
#define NULL 0 afx.h
typedef void VOID winnt.h
//[/b]短整型[/b]typedef unsigned short
typedef unsigned short USHORT; windef.h
typedef unsigned short WORD; windef.h
typedef unsigned short wchar_t
typedef short SHORT; winnt.h
//[/b]整型[/b]typedef int
typedef int BOOL; 取值为TRUE or FALSE windef.h
typedef int INT; windef.h
typedef unsigned int UINT; 定义一个新的Win32数据类型,它会把一个参数强制转换成Windows3.x应用中的16位值 或Win32应用中的32位值windef.h
//[/b]长整型[/b]typedef long[/b]
typedef unsigned long ULONG; windef.h
typedef unsigned long DWORD; windef.h
typedef DWORD COLORREF; windef.h
typedef long LONG; winnt.h
typedef __int64 LONGLONG; winnt.h
typedef unsigned __int64 ULONGLONG; winnt.h
typedef ULONGLONG DWORDLONG; winnt.h
//[/b]浮点型[/b]
typedef float FLOAT; windef.h
typedef double DOUBLE; wtypes.h
//[/b]字符类型[/b]typedef char[/b]
typedef char CHAR/CCHAR; winnt.h
typedef unsigned char UCHAR; windef.h
typedef unsigned char BYTE; windef.h
typedef wchar_t WCHAR; 声明一个16位的UNICODE字符,用来表示世界上所有已知的书写语言的符号winnt.h
typedef WCHAR TCHAR, *PTCHAR; winnt.h
//[/b]指向[/b]字符串[/b]的指针类型LP*[/b]
/*以下为winnt.h的部分内容*/
// UNICODE (Wide Character) types[/b]
[/b]
typedef wchar_t WCHAR; // wc, 16-bit UNICODE character
typedef __nullterminated WCHAR *NWPSTR, *LPWSTR, *PWSTR;
typedef __nullterminated CONST WCHAR *LPCWSTR, *PCWSTR;
// ANSI (Multi-byte Character) types[/b]
typedef CHAR *PCHAR, *LPCH, *PCH;
typedef __nullterminated CHAR *NPSTR, *LPSTR, *PSTR;
指向Windows字符串(以空字符结束)的32位指针char*
typedef __nullterminated CONST CHAR *LPCSTR, *PCSTR;
指向Windows常字符串(以空字符结束)的32位指针const char*
// Neutral ANSI/UNICODE types and macros[/b]
#ifdef UNICODE // r_winnt
#ifndef _TCHAR_DEFINED
typedef WCHAR TCHAR, *PTCHAR;
typedef WCHAR TBYTE , *PTBYTE ;
#define _TCHAR_DEFINED
#endif /* !_TCHAR_DEFINED */
typedef LPWSTR PTSTR, LPTSTR;
指向Windows字符串(以空字符结束)的32位指针,用于移植到双字节字符集
LPTSTR For Unicode platforms,it is LPWSTR,For ANSI and DBCS platforms,it is LPSTR
typedef LPCWSTR PCTSTR, LPCTSTR;
指向Windows常字符串(以空字符结束)的32位指针const char* ,用于移植到双字节字符集
LPCTSTR For Unicode platforms,it is LPCWSTR,For ANSI and DBCS platforms,it is LPCSTR
typedef LPWSTR LP;
#define __TEXT(quote) L##quote // r_winnt
/*以上为winnt.h的部分内容*/
typedef WCHAR OLECHAR; wtypes.h
typedef /* [wire_marshal] */ OLECHAR *BSTR; unsigned short* wtypes.h
//[/b]函数参数、返回值类型[/b]
typedef UINT_PTR WPARAM; 窗口函数或callback函数的一个参数,在Win16中是16-bit,在Win32中是32-bit windef.h
typedef LONG_PTR LPARAM; 32位窗口函数或callback函数的一个参数windef.h
typedef LONG_PTR LRESULT; 32位作为窗口函数或callback函数的返回值windef.h
//[/b]指向函数的指针类型[/b]__stdcall
typedef int (WINAPI *PROC)();PROC指向回调函数的指针
typedef LRESULT (CALLBACK* WNDPROC)(HWND, UINT, WPARAM, LPARAM);
WNDPROC指向在应用程序中定义的窗口过程的指针
#define CALLBACK __stdcall windef.h
#define WINAPI __stdcall windef.h
#define WINAPIV __cdecl windef.h
#define APIENTRY WINAPI windef.h
#define APIPRIVATE __stdcall windef.h
#define PASCAL __stdcall windef.h
typedef void far *LPVOID; 指向任意类型的指针windef.h
//Windows[/b]句柄类[/b]型[/b]HANDLE32位的无符号整数,用于标识[/b]
窗口句柄 HWND
实例句柄 HINSTANCE
光标句柄 HCURSOR [/b]
图标句柄 HICON
位图句柄 HBITMAP
菜单句柄 HMENU
设备描述句柄 HDC
钢笔句柄 HPEN
画刷句柄 HBRUSH
字体句柄 HFONT
文件句柄 HFILE
【参考】
URL:http://www.programfan.com/blog/article.asp?id=33809,《MFC/windows基本数据类型》,phunxm
相关文章推荐
- MFC自定义的数据类型
- 使用MFC的CArray自定义数据类型,编译报错的解决方法
- MFC中自定义的数据类型对照表
- 自定义数据类型,实现数据排序
- Qt-信号和槽中使用自定义数据类型
- SQL Server CLR全功略之五---CLR自定义数据类型
- MFC如何自定义消息与在线程中向主窗体控件发送数据
- OC_构造方法,自定义构造方法,分类,类的深入研究,description,SEL数据类型笔记
- C++中 关于自定义数据类型
- SqlServer2000中用户自定义数据类型的使用
- QT 4.7 DBUS Binding如何支持自定义数据类型的传输(一)
- Windows/MFC数据类型
- 使用chukwa的自定义数据类型收集日志配置问题
- MFC数据类型总结
- C++自定义数据类型之联合
- 修改自定义数据类型精度
- 使用GDI+可以方便的把OpenCV的图像矩阵类型数据显示在MFC的窗口中
- NoSQL之Redis(二)---Java操作Redis存储自定义类型数据
- NHibernate自定义数据类型
- MFC数据类型(data types)