#pragma once #include "globalDefine.h" class RBGroups { public: RBGroups(int i=0); RBGroups(ads_real r); RBGroups(const ads_point p); RBGroups(LPCTSTR s); RBGroups(ads_name n); RBGroups(long l); RBGroups(const RBGroups& src); //Extend data RBGroups(int, int i); RBGroups(int, ads_real r); RBGroups(int strOrHandle, LPCTSTR s); ~RBGroups(); // 重新定义 new, delete操作符, 以便与ADS兼容 void *operator new(size_t); void operator delete(void *a); operator resbuf & (); operator resbuf * (); int operator == (const RBGroups &other) const; int operator != (const RBGroups &other) const; RBGroups& operator = (const RBGroups &src); public: RBGroups *next; union { short type; short code; }; union { ads_real real; ads_point point; short shortInt; LPTSTR string; ads_name adsName; long longInt; STBinary binary; }; }; typedef RBGroups *PGroups; typedef RBGroups *PList;