⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 basedef.h

📁 以OLE DB风格访问DB2数据库的C++类源码
💻 H
字号:
#ifndef _BASE_DEF_H
#define _BASE_DEF_H

#if defined(__xlC__) || defined(__IBMC__) || defined(__IBMCPP__)
#define _UNIX_VER
#endif

#if defined(_UNIX_VER)

///////////////////////////////////////////////////////////////////////
// Data Type Definitions

#undef far
#undef near
#undef pascal

#define far
#define near

#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 unsigned short	USHORT;
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;

typedef int				INT;
typedef unsigned int	UINT;
typedef unsigned int	*PUINT;
typedef unsigned int	HANDLE;

typedef char near		*PSTR;
typedef char far		*LPSTR;
typedef const char near	*PCSTR;
typedef const char far	*LPCSTR;

#define VOID			void
typedef char			CHAR;
typedef short			SHORT;
typedef long			LONG;

///////////////////////////////////////////////////////////////////////
// Macro Definitions

#define MINCHAR			0x80
#define MAXCHAR			0x7f
#define MINSHORT		0x8000
#define MAXSHORT		0x7fff
#define MININT			0x80000000
#define MAXINT			0x7fffffff
#define MINLONG			0x80000000
#define MAXLONG			0x7fffffff
#define MAXBYTE			0xff
#define MAXWORD			0xffff
#define MAXDWORD		0xffffffff

#define MAX_PATH		256

#ifndef TRUE
#define TRUE	1
#endif

#ifndef FALSE
#define FALSE	0
#endif

#ifndef max
#define max(a, b)		((a) < (b) ? (b) : (a))
#endif

#ifndef min
#define min(a, b)		((a) > (b) ? (b) : (a))
#endif

#define MAKEWORD(a, b)	((WORD)(((BYTE)(a)) | ((WORD)((BYTE)(b))) << 8))
#define MAKELONG(a, b)	((LONG)(((WORD)(a)) | ((DWORD)((WORD)(b))) << 16))
#define LOWORD(l)		((WORD)(l))
#define HIWORD(l)		((WORD)(((DWORD)(l) >> 16) & 0xFFFF))
#define LOBYTE(w)		((BYTE)(w))
#define HIBYTE(w)		((BYTE)(((WORD)(w) >> 8) & 0xFF))

#ifdef _DEBUG

#include <assert.h>
#define ASSERT(exp)		assert(exp)
#define ASSERT_VALID(p)	assert(p != NULL)
#define VERIFY(exp)		assert(exp)

#define TRACE			printf
#define TRACE0(sz)		printf("%s", sz)
#define TRACE1(sz, p1)			printf(sz, p1)
#define TRACE2(sz, p1, p2)		printf(sz, p1, p2)
#define TRACE3(sz, p1, p2, p3)	printf(sz, p1, p2, p3)

#else // _DEBUG

#define ASSERT(exp)		((void)0)
#define ASSERT_VALID(p)	((void)0)
#define VERIFY(exp)		(exp)

#define TRACE			1 ? (void)0 : (void)printf
#define TRACE0(sz)
#define TRACE1(sz, p1)
#define TRACE2(sz, p1, p2)
#define TRACE3(sz, p1, p2, p3)

#endif // _DEBUG

///////////////////////////////////////////////////////////////////////
// Exception Handler - Implemented with STL port supported

#if defined(_STLP_THROW_RANGE_ERRORS)

#include <stdexcept>#include <string>#define _THROW(ex, msg)	throw ex(string(msg))

#else // defined(_STLP_THROW_RANGE_ERRORS)

#include <cstdlib>#include <cstdio>
#define _THROW(ex, msg)	(puts(msg), _STLP_ABORT())

#endif // defined(_STLP_THROW_RANGE_ERRORS)

#endif // defined(_UNIX_VER)

#endif // _BASE_DEF_H

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -