본문내용
.num = strlen(str)+strlen(S.str); // 더할 두 문장의 길이의 합
K.str = new char[K.num+1]; // 널문자+1 해서 동적할당
strcpy(K.str,str); // 앞문장을 먼저 넣고,
strcat(K.str,S.str); // 그 뒤에 다음 문장을 붙여줌
return K; // 더해진 클래스를 리턴
}
char& CString::operator[](int val) // []사용하게 하는 함수
{
return *(str+val);
}
CString& CString::operator=(const CString &S) // 클래스 간의 = 연산자
{
delete []str; // 좌변의 동적할당받은 것을 없애주고
num=strlen(S.str); // 우변의 문장길이를 세어준 다음
str=new char[num+1]; // 좌변의 문자를 넣을곳을 동적할당
strcpy(str,S.str); // 복사해서 넣어줌
return (*this);
}
void CString::operator+=(CString &S) // 클래스 간의 += 연산자
{
char *temp = new char[num + 1]; // 좌변에 저장된 문자를 넣을곳을 할당
strcpy(temp, str); // 할당받은곳에 좌변의 문자를 복사
delete [] str; // 좌변의 할당받았던 곳을 없애줌
num = num + S.num; // 좌변과 우변의 문자열의 총길이
str = new char[num + 1]; // 널문자 공간 포함하여 새로 좌변할당
strcpy(str, temp); // 복사해
K.str = new char[K.num+1]; // 널문자+1 해서 동적할당
strcpy(K.str,str); // 앞문장을 먼저 넣고,
strcat(K.str,S.str); // 그 뒤에 다음 문장을 붙여줌
return K; // 더해진 클래스를 리턴
}
char& CString::operator[](int val) // []사용하게 하는 함수
{
return *(str+val);
}
CString& CString::operator=(const CString &S) // 클래스 간의 = 연산자
{
delete []str; // 좌변의 동적할당받은 것을 없애주고
num=strlen(S.str); // 우변의 문장길이를 세어준 다음
str=new char[num+1]; // 좌변의 문자를 넣을곳을 동적할당
strcpy(str,S.str); // 복사해서 넣어줌
return (*this);
}
void CString::operator+=(CString &S) // 클래스 간의 += 연산자
{
char *temp = new char[num + 1]; // 좌변에 저장된 문자를 넣을곳을 할당
strcpy(temp, str); // 할당받은곳에 좌변의 문자를 복사
delete [] str; // 좌변의 할당받았던 곳을 없애줌
num = num + S.num; // 좌변과 우변의 문자열의 총길이
str = new char[num + 1]; // 널문자 공간 포함하여 새로 좌변할당
strcpy(str, temp); // 복사해
추천자료
UML 1 [Unified Modeling Language]
UML[Unified Modeling Language]
데이타 모델링
자바스크립트 (JAVASCRIPT) 대한 이해와 장단점 을 알아보자
데이터베이스의역사
[인문과학] 시스템분석설계
자바스크립트 핵심정리
2009년 2학기 시스템분석및설계 기말시험 핵심체크
데이터베이스관리 시스템 (Database Management System(MySql))
정보시스템 개발방법론 및 개발도구
게임 엔진
[소프트웨어공학][소프트웨어공학 개발공정][테스트]소프트웨어공학의 개념, 소프트웨어공학...
[시스템관리][정보관리][교육행정정보시스템 관리][노숙인 정보관리시스템][학교종합정보관리...
소개글