xptr.h
来自「频谱分析仪Frequency Analyzer」· C头文件 代码 · 共 44 行
H
44 行
#if !defined XPTR_H
#define XPTR_H
template <class T>
class XPtr
{
public:
~XPtr () { delete _p; }
T* Acquire ()
{
T * pTmp = _p;
_p = 0;
return pTmp;
}
T * operator->() { return _p; }
T const & GetAccess () const { return *_p; }
protected:
// protected constructors
XPtr (): _p (0) {}
XPtr (T* p): _p (p) {}
T * _p;
};
template <class T>
class XArray
{
public:
XArray (int size)
: _arr (new T [size]) {}
~XArray () { delete []_arr; }
T * Acquire ()
{
T * aTmp = _arr;
_arr = 0;
return aTmp;
}
T const & operator [] (int i) const { return _arr [i]; }
T& operator [] (int i) { return _arr [i]; }
protected:
T * _arr;
};
#endif
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?