Files
envi-code/SourceCode/Code2026/tg_shs/shs_subgeLib/TWArrayAr.cpp
T
gjm 164968b62e chore
把非utf8-bom编码的cpp/h文件改为 utf8 bom 编码, msvc识别utf8编码时,如果不是bom格式的,会使用当前cp_oem来解码.
2026-10-04 00:04:20 +08:00

65 lines
1.1 KiB
C++

//-----------------------------------------------------------------------------+
// Copyright (C), 1998-2007, Beijing Tangent Software Co. Ltd.
// = FileName : TWArrayAr.cpp
// = Version : ver2.0
// = Author : xlc
// = CreateDate : 2002-09-09
// = Description: 类的定义
// = Maintainers:
//
//-----------------------------------------------------------------------------+
#include "StdAfx.h"
#include "TWArrayAr.h"
TWArrayAr::TWArrayAr(long spaceSize, long unit)
: m_buf(1024,1024)
{
}
TWArrayAr::~TWArrayAr()
{
}
char& TWArrayAr::operator [] (long i)
{
return m_buf[i];
}
void TWArrayAr::SetLength(long len)
{
m_buf.SetLength(len,true);
m_iLength = len;
}
void TWArrayAr::Clear()
{
m_buf.Clear();
TWArchive::Clear();
}
void TWArrayAr::Read(void *p, long iSize)
{
char *pData = (char*)p;
m_buf.MoveTo(GetCur());
for (long i = 0; i < iSize && !m_buf.IsOut(); i++, m_buf.MoveToNext())
{
pData[i] = m_buf.GetCurData();
}
}
void TWArrayAr::Write(void *p, long size)
{
char *pData = (char*)p;
for (long i = 0; i < size; i++)
{
m_buf[GetCur() + i] = pData[i];
}
m_iLength = m_buf.GetLength();
}