337 lines
9.7 KiB
C++
337 lines
9.7 KiB
C++
|
|
/*//===============================================================
|
|||
|
|
|
|||
|
|
<< BIT SET EX (1) >>
|
|||
|
|
|
|||
|
|
PRGM : B4nFter
|
|||
|
|
|
|||
|
|
FILE : BITSETEX1.HPP
|
|||
|
|
DESC : <EFBFBD><EFBFBD>Ʈ<EFBFBD><EFBFBD><EFBFBD><EFBFBD> Ŭ<EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD> (<EFBFBD><EFBFBD><EFBFBD><EFBFBD>, ũ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, <EFBFBD>ӵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>)
|
|||
|
|
INIT BUILT DATE : 2004. 06. 06
|
|||
|
|
LAST BUILT DATE : 2008. 05. 20
|
|||
|
|
|
|||
|
|
Copyright<EFBFBD><EFBFBD> 2002~2009 B4nFter (b4nfter@gmail.com) and Co-Writers. All Rights Reserved.
|
|||
|
|
|
|||
|
|
P.S.>
|
|||
|
|
- <EFBFBD>Ϲ<EFBFBD> <EFBFBD><EFBFBD>Ʈ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD>Ʈ <EFBFBD>÷<EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD>ÿ<EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϵ<EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD> (<EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> Ŭ<EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD>)
|
|||
|
|
- TTYPE Ÿ<EFBFBD>Ը<EFBFBD>ŭ<EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD>ѵ<EFBFBD> ũ<EFBFBD>⸦ <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD>ܼ<EFBFBD>ȭ<EFBFBD>Ǿ<EFBFBD> <EFBFBD>ӵ<EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
|
|||
|
|
*///===============================================================
|
|||
|
|
|
|||
|
|
|
|||
|
|
#pragma once
|
|||
|
|
|
|||
|
|
|
|||
|
|
///////////////////////////////////////////////////////////////////
|
|||
|
|
// INCLUDE
|
|||
|
|
///////////////////////////////////////////////////////////////////
|
|||
|
|
|
|||
|
|
#include "COMMONMACROS.H"
|
|||
|
|
#include "BASESET.H"
|
|||
|
|
#include "DEBUGUTIL.H"
|
|||
|
|
#include "SAFESTRINGMACROS.H"
|
|||
|
|
|
|||
|
|
|
|||
|
|
///////////////////////////////////////////////////////////////////
|
|||
|
|
// DEFINE
|
|||
|
|
///////////////////////////////////////////////////////////////////
|
|||
|
|
|
|||
|
|
|
|||
|
|
///////////////////////////////////////////////////////////////////
|
|||
|
|
// DECLARATION
|
|||
|
|
///////////////////////////////////////////////////////////////////
|
|||
|
|
|
|||
|
|
//*---------------------------------------------------------------
|
|||
|
|
// TYPE : CLASS
|
|||
|
|
// NAME : CBitSetEx1
|
|||
|
|
//*---------------------------------------------------------------
|
|||
|
|
// DESC : <20><>Ʈ<EFBFBD><C6AE><EFBFBD><EFBFBD> Ŭ<><C5AC><EFBFBD><EFBFBD> (<28><><EFBFBD><EFBFBD>, ũ<><C5A9><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, <20>ӵ<EFBFBD><D3B5><EFBFBD><EFBFBD><EFBFBD>)
|
|||
|
|
// PRGM : B4nFter
|
|||
|
|
//*---------------------------------------------------------------
|
|||
|
|
template<INT TMAX, class TTYPE>
|
|||
|
|
class CBitSetEx1
|
|||
|
|
{
|
|||
|
|
public:
|
|||
|
|
typedef TTYPE TP_TYPE;
|
|||
|
|
|
|||
|
|
public:
|
|||
|
|
explicit CBitSetEx1(TTYPE pBitSet = static_cast<TTYPE>(0));
|
|||
|
|
|
|||
|
|
// <20><>Ʈ <20><><EFBFBD><EFBFBD> <20><EFBFBD><DEBC><EFBFBD>
|
|||
|
|
BOOL Get(ULONG pBitPos);
|
|||
|
|
BOOL IsSet() const;
|
|||
|
|
VOID Set(ULONG pBitPos, BOOL pBitVal);
|
|||
|
|
VOID SetAll(BOOL pBitVal);
|
|||
|
|
UINT GetMax() const { return TMAX; }
|
|||
|
|
UINT GetBitSize() const { return sizeof(TP_TYPE)*CHAR_BIT; }
|
|||
|
|
|
|||
|
|
// <20>÷<EFBFBD><C3B7><EFBFBD> <20><><EFBFBD><EFBFBD> <20><EFBFBD><DEBC><EFBFBD> (<28>÷α<C3B7><CEB1><EFBFBD> <20><><EFBFBD>۰<EFBFBD><DBB0><EFBFBD> 1<><31><EFBFBD><EFBFBD> <20>̾<EFBFBD><CCBE><EFBFBD> <20><>)
|
|||
|
|
BOOL IsSet(TTYPE pBitSet) const;
|
|||
|
|
BOOL IsReset(TTYPE pBitSet) const;
|
|||
|
|
BOOL IsSetOther(TTYPE pBitSet) const; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>÷<EFBFBD><C3B7><EFBFBD> <20><><EFBFBD><EFBFBD> <20>÷<EFBFBD><C3B7><EFBFBD> <20><><EFBFBD><EFBFBD> SET <20><><EFBFBD><EFBFBD>
|
|||
|
|
VOID Set(TTYPE pBitSet);
|
|||
|
|
VOID Set();
|
|||
|
|
VOID Reset(TTYPE pBitSet);
|
|||
|
|
VOID Reset();
|
|||
|
|
TP_TYPE GetRaw() const;
|
|||
|
|
|
|||
|
|
BOOL operator[](ULONG pBitPos);
|
|||
|
|
|
|||
|
|
private:
|
|||
|
|
TTYPE m_BitSet;
|
|||
|
|
};
|
|||
|
|
|
|||
|
|
|
|||
|
|
///////////////////////////////////////////////////////////////////
|
|||
|
|
// IMPLEMENTATION
|
|||
|
|
///////////////////////////////////////////////////////////////////
|
|||
|
|
|
|||
|
|
//*---------------------------------------------------------------
|
|||
|
|
// TYPE : FUNCTION
|
|||
|
|
// NAME : CBitSetEx1::CBitSetEx1
|
|||
|
|
//*---------------------------------------------------------------
|
|||
|
|
// DESC : <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> (<28><><EFBFBD><EFBFBD><EFBFBD>ʿ<EFBFBD>)
|
|||
|
|
// PARM : 1 . init size
|
|||
|
|
// 2 . init value
|
|||
|
|
// RETV : N/A
|
|||
|
|
// PRGM : B4nFter
|
|||
|
|
//*---------------------------------------------------------------
|
|||
|
|
template<INT TMAX, class TTYPE>
|
|||
|
|
inline CBitSetEx1<TMAX, TTYPE>::CBitSetEx1(TTYPE pBitSet) : m_BitSet(pBitSet)
|
|||
|
|
{
|
|||
|
|
DN_ASSERT(!CDebugUtil::IsOverflow(static_cast<TTYPE>(0), static_cast<TTYPE>(TMAX)), "Overflow!");
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
|
|||
|
|
//*---------------------------------------------------------------
|
|||
|
|
// TYPE : FUNCTION
|
|||
|
|
// NAME : CBitSetEx1::Get
|
|||
|
|
//*---------------------------------------------------------------
|
|||
|
|
// DESC : Ư<><C6AF> <20><>ġ<EFBFBD><C4A1> <20><>Ʈ<EFBFBD><C6AE> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
|
|||
|
|
// PARM : N/A
|
|||
|
|
// RETV : Ư<><C6AF> <20><>ġ<EFBFBD><C4A1> <20><>Ʈ<EFBFBD><C6AE> <20><> (0/1)
|
|||
|
|
// PRGM : B4nFter
|
|||
|
|
//*---------------------------------------------------------------
|
|||
|
|
template<INT TMAX, class TTYPE>
|
|||
|
|
inline BOOL CBitSetEx1<TMAX, TTYPE>::Get(ULONG pBitPos)
|
|||
|
|
{
|
|||
|
|
if (!CHECK_LIMIT(pBitPos, GetBitSize())) {
|
|||
|
|
DN_RETURN(FALSE);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
return (m_BitSet >> pBitPos) & 1;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
|
|||
|
|
//*---------------------------------------------------------------
|
|||
|
|
// TYPE : FUNCTION
|
|||
|
|
// NAME : CBitSetEx1::IsSet
|
|||
|
|
//*---------------------------------------------------------------
|
|||
|
|
// DESC : <20><>Ʈ<EFBFBD><C6AE><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> 0 <20><> <20>ƴ<EFBFBD><C6B4><EFBFBD> üũ
|
|||
|
|
// PARM : N/A
|
|||
|
|
// RETV : TRUE - <20><><EFBFBD><EFBFBD> / FALSE - <20><><EFBFBD><EFBFBD>
|
|||
|
|
// PRGM : B4nFter
|
|||
|
|
//*---------------------------------------------------------------
|
|||
|
|
template<INT TMAX, class TTYPE>
|
|||
|
|
inline BOOL CBitSetEx1<TMAX, TTYPE>::IsSet() const
|
|||
|
|
{
|
|||
|
|
return (0 != m_BitSet);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
|
|||
|
|
//*---------------------------------------------------------------
|
|||
|
|
// TYPE : FUNCTION
|
|||
|
|
// NAME : CBitSetEx1::IsSet
|
|||
|
|
//*---------------------------------------------------------------
|
|||
|
|
// DESC : <20><>Ʈ<EFBFBD><C6AE><EFBFBD><EFBFBD><EFBFBD><EFBFBD> Ư<><C6AF> <20><>Ʈ<EFBFBD><C6AE> 0 <20><> <20>ƴ<EFBFBD><C6B4><EFBFBD> üũ
|
|||
|
|
// PARM : 1 . pBitSet - Ư<><C6AF> <20><>
|
|||
|
|
// RETV : TRUE - <20><><EFBFBD><EFBFBD> / FALSE - <20><><EFBFBD><EFBFBD>
|
|||
|
|
// PRGM : B4nFter
|
|||
|
|
//*---------------------------------------------------------------
|
|||
|
|
template<INT TMAX, class TTYPE>
|
|||
|
|
inline BOOL CBitSetEx1<TMAX, TTYPE>::IsSet(TTYPE pBitSet) const
|
|||
|
|
{
|
|||
|
|
DN_ASSERT((0 != pBitSet) && (pBitSet <= TMAX), "Invalid!");
|
|||
|
|
return (0 != (pBitSet & m_BitSet));
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
|
|||
|
|
//*---------------------------------------------------------------
|
|||
|
|
// TYPE : FUNCTION
|
|||
|
|
// NAME : CBitSetEx1::IsReset
|
|||
|
|
//*---------------------------------------------------------------
|
|||
|
|
// DESC : <20><>Ʈ<EFBFBD><C6AE><EFBFBD><EFBFBD><EFBFBD><EFBFBD> Ư<><C6AF> <20><>Ʈ<EFBFBD><C6AE> 0 <20><><EFBFBD><EFBFBD> üũ
|
|||
|
|
// PARM : 1 . pBitSet - Ư<><C6AF> <20><>
|
|||
|
|
// RETV : TRUE - <20><><EFBFBD><EFBFBD> / FALSE - <20><><EFBFBD><EFBFBD>
|
|||
|
|
// PRGM : B4nFter
|
|||
|
|
//*---------------------------------------------------------------
|
|||
|
|
template<INT TMAX, class TTYPE>
|
|||
|
|
inline BOOL CBitSetEx1<TMAX, TTYPE>::IsReset(TTYPE pBitSet) const
|
|||
|
|
{
|
|||
|
|
DN_ASSERT((0 != pBitSet) && (pBitSet <= TMAX), "Invalid!");
|
|||
|
|
return (0 == (pBitSet & m_BitSet));
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
|
|||
|
|
//*---------------------------------------------------------------
|
|||
|
|
// TYPE : FUNCTION
|
|||
|
|
// NAME : CBitSetEx1::IsSetOther
|
|||
|
|
//*---------------------------------------------------------------
|
|||
|
|
// DESC : <20><>Ʈ<EFBFBD><C6AE><EFBFBD><EFBFBD><EFBFBD><EFBFBD> Ư<><C6AF> <20><>Ʈ<EFBFBD><C6AE> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> 0 <20><> <20>ƴ<EFBFBD><C6B4><EFBFBD> üũ
|
|||
|
|
// PARM : 1 . pBitSet - Ư<><C6AF> <20><>
|
|||
|
|
// RETV : TRUE - <20><><EFBFBD><EFBFBD> / FALSE - <20><><EFBFBD><EFBFBD>
|
|||
|
|
// PRGM : B4nFter
|
|||
|
|
//*---------------------------------------------------------------
|
|||
|
|
template<INT TMAX, class TTYPE>
|
|||
|
|
inline BOOL CBitSetEx1<TMAX, TTYPE>::IsSetOther(TTYPE pBitSet) const
|
|||
|
|
{
|
|||
|
|
DN_ASSERT((0 != pBitSet) && (pBitSet <= TMAX), "Invalid!");
|
|||
|
|
return (0 != ((~pBitSet) & m_BitSet));
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
|
|||
|
|
//*---------------------------------------------------------------
|
|||
|
|
// TYPE : FUNCTION
|
|||
|
|
// NAME : CBitSetEx1::Set
|
|||
|
|
//*---------------------------------------------------------------
|
|||
|
|
// DESC : <20><>Ʈ<EFBFBD><C6AE><EFBFBD><EFBFBD> <20><>ü<EFBFBD><C3BC> Ư<><C6AF> <20><>Ʈ<EFBFBD><C6AE> <20><><EFBFBD><EFBFBD>
|
|||
|
|
// PARM : 1 . pBitSet - Ư<><C6AF> <20><>
|
|||
|
|
// RETV : N/A
|
|||
|
|
// PRGM : B4nFter
|
|||
|
|
//*---------------------------------------------------------------
|
|||
|
|
template<INT TMAX, class TTYPE>
|
|||
|
|
inline VOID CBitSetEx1<TMAX, TTYPE>::Set(TTYPE pBitSet)
|
|||
|
|
{
|
|||
|
|
DN_ASSERT((0 != pBitSet) && (pBitSet <= TMAX), "Invalid!");
|
|||
|
|
m_BitSet |= (pBitSet);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
|
|||
|
|
//*---------------------------------------------------------------
|
|||
|
|
// TYPE : FUNCTION
|
|||
|
|
// NAME : CBitSetEx1::Set
|
|||
|
|
//*---------------------------------------------------------------
|
|||
|
|
// DESC : <20><>Ʈ<EFBFBD><C6AE><EFBFBD><EFBFBD> <20><>ü<EFBFBD><C3BC> 1 <20><> <20><><EFBFBD><EFBFBD>
|
|||
|
|
// PARM : N/A
|
|||
|
|
// RETV : N/A
|
|||
|
|
// PRGM : B4nFter
|
|||
|
|
//*---------------------------------------------------------------
|
|||
|
|
template<INT TMAX, class TTYPE>
|
|||
|
|
inline VOID CBitSetEx1<TMAX, TTYPE>::Set()
|
|||
|
|
{
|
|||
|
|
SetAll(1);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
|
|||
|
|
//*---------------------------------------------------------------
|
|||
|
|
// TYPE : FUNCTION
|
|||
|
|
// NAME : CBitSetEx1::Set
|
|||
|
|
//*---------------------------------------------------------------
|
|||
|
|
// DESC : Ư<><C6AF> <20><>ġ<EFBFBD><C4A1> <20><>Ʈ<EFBFBD><C6AE> Ư<><C6AF> <20><>Ʈ<EFBFBD><C6AE> <20><><EFBFBD><EFBFBD>
|
|||
|
|
// PARM : 1 . pBitPos - <20><>Ʈ <20><>ġ
|
|||
|
|
// 2 . pBitVal - <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><>Ʈ<EFBFBD><C6AE>
|
|||
|
|
// RETV : N/A
|
|||
|
|
// PRGM : B4nFter
|
|||
|
|
//*---------------------------------------------------------------
|
|||
|
|
template<INT TMAX, class TTYPE>
|
|||
|
|
inline VOID CBitSetEx1<TMAX, TTYPE>::Set(ULONG pBitPos, BOOL pBitVal)
|
|||
|
|
{
|
|||
|
|
if (!CHECK_LIMIT(pBitPos, GetBitSize())) {
|
|||
|
|
DN_ASSERT(0, "Invalid!");
|
|||
|
|
return;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
if (pBitVal) {
|
|||
|
|
m_BitSet |= (static_cast<TTYPE>(1) << pBitPos);
|
|||
|
|
}
|
|||
|
|
else {
|
|||
|
|
m_BitSet &= (~(static_cast<TTYPE>(1) << pBitPos));
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
|
|||
|
|
//*---------------------------------------------------------------
|
|||
|
|
// TYPE : FUNCTION
|
|||
|
|
// NAME : CBitSetEx1::SetAll
|
|||
|
|
//*---------------------------------------------------------------
|
|||
|
|
// DESC : <20><>Ʈ<EFBFBD><C6AE><EFBFBD><EFBFBD> <20><>ü<EFBFBD><C3BC> Ư<><C6AF> <20><>Ʈ<EFBFBD><C6AE> <20><><EFBFBD><EFBFBD>
|
|||
|
|
// PARM : N/A
|
|||
|
|
// RETV : N/A
|
|||
|
|
// PRGM : B4nFter
|
|||
|
|
//*---------------------------------------------------------------
|
|||
|
|
template<INT TMAX, class TTYPE>
|
|||
|
|
inline VOID CBitSetEx1<TMAX, TTYPE>::SetAll(BOOL pBitVal)
|
|||
|
|
{
|
|||
|
|
if (pBitVal) {
|
|||
|
|
::memset(&m_BitSet, 0xFF, sizeof(m_BitSet));
|
|||
|
|
}
|
|||
|
|
else {
|
|||
|
|
::memset(&m_BitSet, 0x00, sizeof(m_BitSet));
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
|
|||
|
|
//*---------------------------------------------------------------
|
|||
|
|
// TYPE : FUNCTION
|
|||
|
|
// NAME : CBitSetEx1::Reset
|
|||
|
|
//*---------------------------------------------------------------
|
|||
|
|
// DESC : <20><>Ʈ<EFBFBD><C6AE><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>ʱ<EFBFBD>ȭ
|
|||
|
|
// PARM : N/A
|
|||
|
|
// RETV : N/A
|
|||
|
|
// PRGM : B4nFter
|
|||
|
|
//*---------------------------------------------------------------
|
|||
|
|
template<INT TMAX, class TTYPE>
|
|||
|
|
VOID CBitSetEx1<TMAX, TTYPE>::Reset()
|
|||
|
|
{
|
|||
|
|
m_BitSet = static_cast<TTYPE>(0);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
|
|||
|
|
//*---------------------------------------------------------------
|
|||
|
|
// TYPE : FUNCTION
|
|||
|
|
// NAME : CBitSetEx1::Reset
|
|||
|
|
//*---------------------------------------------------------------
|
|||
|
|
// DESC : <20><>Ʈ<EFBFBD><C6AE><EFBFBD><EFBFBD><EFBFBD><EFBFBD> Ư<><C6AF> <20><>Ʈ<EFBFBD><C6AE><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20>ݴ<EFBFBD><DDB4><EFBFBD> <20><><EFBFBD><EFBFBD>
|
|||
|
|
// PARM :
|
|||
|
|
// RETV : N/A
|
|||
|
|
// PRGM : B4nFter
|
|||
|
|
//*---------------------------------------------------------------
|
|||
|
|
template<INT TMAX, class TTYPE>
|
|||
|
|
VOID CBitSetEx1<TMAX, TTYPE>::Reset(TTYPE pBitSet)
|
|||
|
|
{
|
|||
|
|
DN_ASSERT((0 != pBitSet) && (pBitSet <= TMAX), "Invalid!");
|
|||
|
|
m_BitSet &= ~(pBitSet);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
|
|||
|
|
//*---------------------------------------------------------------
|
|||
|
|
// TYPE : FUNCTION
|
|||
|
|
// NAME : CBitSetEx1::GetRaw
|
|||
|
|
//*---------------------------------------------------------------
|
|||
|
|
// DESC : <20><>Ʈ<EFBFBD><C6AE><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
|
|||
|
|
// PARM : N/A
|
|||
|
|
// RETV : TTYPE Ÿ<><C5B8><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><>
|
|||
|
|
// PRGM : B4nFter
|
|||
|
|
//*---------------------------------------------------------------
|
|||
|
|
template<INT TMAX, class TTYPE>
|
|||
|
|
typename CBitSetEx1<TMAX, TTYPE>::TP_TYPE CBitSetEx1<TMAX, TTYPE>::GetRaw() const
|
|||
|
|
{
|
|||
|
|
return m_BitSet;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
|
|||
|
|
//*---------------------------------------------------------------
|
|||
|
|
// TYPE : FUNCTION
|
|||
|
|
// NAME : CBitSetEx1::operator[]
|
|||
|
|
//*---------------------------------------------------------------
|
|||
|
|
// DESC : Ư<><C6AF> <20><>Ʈ<EFBFBD><C6AE> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
|
|||
|
|
// PARM : N/A
|
|||
|
|
// RETV : Ư<><C6AF> <20><>Ʈ<EFBFBD><C6AE> <20><>
|
|||
|
|
// PRGM : B4nFter
|
|||
|
|
//*---------------------------------------------------------------
|
|||
|
|
template<INT TMAX, class TTYPE>
|
|||
|
|
inline BOOL CBitSetEx1<TMAX, TTYPE>::operator[](ULONG pBitPos)
|
|||
|
|
{
|
|||
|
|
return Get(pBitPos);
|
|||
|
|
}
|
|||
|
|
|