当我偶然发现时,我正在阅读一些代码 far
第一次有资格,现在我觉得为什么这些曾经被使用过。但是我们今天使用的内存模型为什么这些甚至已经到位了?人们是否真的在实践中使用这些,或者他们只是作为过去的饰品?
使用之间甚至会有什么区别 typedef BOOL near *PBOOL;
和 typedef BOOL far *LPBOOL;
?
有没有 真实 用于这些仍然?或者我应该只看另一种方式。
// WinDef.h ~Line 144
#undef FAR
#undef NEAR
#define FAR far
#define NEAR near
#ifndef CONST
#define CONST const
#endif
typedef unsigned long DWORD;
typedef int BOOL;
typedef unsigned char BYTE;
typedef unsigned short WORD;
typedef float FLOAT;
typedef FLOAT *PFLOAT;
typedef BOOL near *PBOOL;
typedef BOOL far *LPBOOL;
typedef BYTE near *PBYTE;
typedef BYTE far *LPBYTE;
typedef int near *PINT;
typedef int far *LPINT;
typedef WORD near *PWORD;
typedef WORD far *LPWORD;
typedef long far *LPLONG;
typedef DWORD near *PDWORD;
typedef DWORD far *LPDWORD;
typedef void far *LPVOID;
typedef CONST void far *LPCVOID;
编辑:第一个评论也是一个好点,如果这是什么意思 far
和 near
被定义为什么?
// WinDef.h: Lines 91-91
#define far
#define near