📄 structinquery.h
字号:
#ifndef __STRUCT_IN_QUERY_H__
#define __STRUCT_IN_QUERY_H__
#pragma once
#pragma pack(push, 1)
#include <Struct.h>
#include <SCSlotHeader.h>
#include <QueryResult.h>
class QueryForUser : public QueryResult
{
public:
VOID SetUserKey( DWORD dwKey ) { m_dwUserKey = dwKey; }
DWORD GetUserKey() { return m_dwUserKey; }
private:
DWORD m_dwUserKey;
};
/*
//------------------------------------------------------------------------
//------------------------------------------------------------------------
#include <MemoryPoolFactory.h>
template< class _Fy, DWORD _dfSize = 1000 >
class QUERYPOOL
{
public:
QUERYPOOL( DWORD dwSize = _dfSize ){ INIT_POOL( dwSize ); }
virtual ~QUERYPOOL(){ REL_POOL(); }
_Fy * ALLOC()
{
return m_Pool.Alloc();
}
VOID FREE( _Fy * pObj )
{
m_Pool.Free( pObj );
}
private:
static VOID INIT_POOL( DWORD dwSize )
{
m_Pool.Initialize( dwSize );
}
static VOID REL_POOL()
{
m_Pool.Release();
}
private:
static util::CMemoryPoolFactory<_Fy> m_Pool;
};
interface IPOOL : public Query
{
virtual Query * Alloc() = 0;
virtual VOID Free( Query * ) = 0;
};
#define __DECL_QUERY_POOL( CLASSNAME, POOLSIZE ) \
private: \
typedef QUERYPOOL<CLASSNAME, POOLSIZE> QPOOL; \
static QPOOL s_Pool; \
public: \
Query * Alloc() \
{ \
return (Query *)s_Pool.ALLOC(); \
} \
VOID Free( Query * pObject ) \
{ \
s_Pool.FREE( (CLASSNAME *)pObject ); \
}
#define __IMPL_QUERY_POOL( CLASSNAME ) CLASSNAME::QPOOL CLASSNAME::s_Pool;
*/
#pragma pack(pop, 1)
#endif // __STRUCT_IN_QUERY_H__
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -