//	動的文字列確保なクラス

#ifndef __MyuCharbuf_H__
#define __MyuCharbuf_H__

#include <string.h>
#include "MyuDynamicArray.h"

//	クラス宣言
class CMyuCharbuf : public CMyuDynamicArray<char>
{
private:

public:
	//	コンストラクタ・デストラクタ
	CMyuCharbuf(){}
	CMyuCharbuf( const char* instr ){ Setup(instr); }
	CMyuCharbuf( int nLen ){
		Alloc(nLen+1);
	}
	virtual ~CMyuCharbuf(){}
	
	const char* operator =( const char* instr ){ Setup(instr); return c_str(); }
	bool Setup( const char* instr )
	{
		/*int bufsize = strlen(instr)+1;
		if ( Alloc(bufsize) == false )*/
		if ( Alloc( strlen(instr)+1 ) == false )
			return false;
		//strncpy(m_pBuf,instr,bufsize);	<- ?
		strcpy(m_pBuf,instr);
		return true;
	}

	const char* c_str(){ return GetBuf(); }
};

typedef CMyuCharbuf CMyuDynamicChars;

#endif//__MyuCharbuf_H__
