anen.cpp~

来自「本代码是基于LINUX系统下的」· CPP~ 代码 · 共 108 行

CPP~
108
字号
#include <AnEn.h>CAnalyse::CAnalyse(char *totalStr, int length)
{
	assert(totalStr != NULL);
	if(totalStr[0] == 0)
	{
		m = new CSessionMessage(totalStr,length);
	}
	else
	{
		m = new CContactMessage(totalStr,length);
	}
}
CMessage *CAnalyse::GetObject()
{
	return m;
}
void CAnalyse::Release()
{
}
CAnalyse::~CAnalyse()
{

}


class CEncapsulation
{
public:
	CEncapsulation(int type, int uid = 133, char *pwdOname = "zhg", int sid = 0);
	CEncapsulation(int type, char *name, char *pwd);
	CEncapsulation(int type, int sid, int count, char *contentOfStr);
	char *GetContent();
	int GetLength();
	void Release();
	virtual ~CEncapsulation();
private:
	CSessionMessage *s;
	CContactMessage *c;
};


CEncapsulation::CEncapsulation(int type, int uid , char *pwdOname , int sid )
{
	c = new CContactMessage(type,uid,pwdOname,sid);
	s = NULL;
}

CEncapsulation::CEncapsulation(int type, char *name , char *pwd )
{
	c = new CContactMessage(type,name,pwd);
	s = NULL;
}

CEncapsulation::CEncapsulation(int type, int sid , int count , char *contentOfStr )
{
		s = new CSessionMessage(type,sid,count,contentOfStr);
		c = NULL;
}

char *CEncapsulation::GetContent()
{
	if(s != NULL)
	{
		return s->GetTotalStr();
	}
	else
	{
		return c->GetTotalStr();
	}
}
int CEncapsulation::GetLength()
{
	if(s != NULL)
	{
		return s->GetTotalStrLen();
	}
	else
	{
		return c->GetTotalStrLen();
	}
}

void CEncapsulation::Release()
{
	if(s != NULL)
	{
		delete s;
	}
	else
	{
		delete c;
	}
}
CEncapsulation::~CEncapsulation()
{
	if(s != NULL)
	{
		delete s;
	}	
	if(c != NULL)	
	{
		delete c;
	}
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?