// cString.cpp
// Variação 2 sobre a Versão 1 de cString  ( Implementação 1 )
// 7 de Novembro de 2000

#include <string.h>
#include <iostream.h>
#include "cString.h"


cString::cString()
{
	a[0]='\0';	
}

cString::cString( const char *s )
{
	if ( strlen(s) < Max_Len )
	 strcpy( a, s);	
}

cString::~cString()
{
}

int cString::Comprimento ()
{
	return strlen( a);
}

//void cString::operator=( cString s )
//{
//	if ( strlen(s.a) < Max_Len )
//	 strcpy( a, s.a);	
//}

void cString::operator+=( cString s)
{
	int len1, len2;

	len1 = strlen(s.a);
	len2 = strlen(a);

	if ( len1+len2 < Max_Len )
	 strcat( a, s.a);	
}


// friend functions

cString operator+( cString s1, cString s2 )
{
	cString res;

	res = s1;

	res += s2;

	return res;
}


ostream& operator<<( ostream& os, cString s )
{
	return os << s.a;
}
