📄 buffer.cpp
字号:
// Buffer.cpp: implementation of the CBuffer class.
//
//////////////////////////////////////////////////////////////////////
#include "../stdafx.h"
#include "Buffer.h"
#ifdef _DEBUG
#undef THIS_FILE
static char THIS_FILE[]=__FILE__;
#define new DEBUG_NEW
#endif
#if 0
// Japanese
#define L_ERROR_ALLOC_AUDIO_BUFFER "壒惡僶僢僼傽梡偺儊儌儕偑懌傝傑偣傫両"
#define L_TITLE_MESSAGEBOX "捠抦"
#else
#define L_ERROR_ALLOC_AUDIO_BUFFER "Out of memory for audio buffer!"
#define L_TITLE_MESSAGEBOX "Note"
#endif
//////////////////////////////////////////////////////////////////////
// Construction/Destruction
//////////////////////////////////////////////////////////////////////
CBuffer::CBuffer(DWORD size, bool AutoDelete)
{
m_bAutoDelete = AutoDelete;
try
{
ptr.b = new BYTE[size];
if(ptr.b) ByteLen = size;
}
catch(...)
{
//ErrorMsg("Out of memory!");
// You cannot use LoadString since it will throw an exception again.
MessageBox(NULL,L_ERROR_ALLOC_AUDIO_BUFFER, L_TITLE_MESSAGEBOX,MB_OK);
}
}
CBuffer::CBuffer(void* buffer, DWORD length)
{
m_bAutoDelete = false;
if(buffer)
{
ptr.v = buffer;
ByteLen = length;
}
else
{
ptr.b = NULL;
ByteLen = 0;
}
}
CBuffer::~CBuffer()
{
// remember to delete the memory
if(m_bAutoDelete && ptr.b != NULL) delete ptr.b;
}
void CBuffer::Erase()
{
if(ptr.b) ZeroMemory(ptr.b,ByteLen);
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -