모든 내용은 [윤성우 저, "열혈 C++ 프로그래밍", 오렌지미디어] 를 기반으로 제 나름대로 이해하여 정리한 것입니다. 다소 부정확한 내용이 있을수도 있으니 이를 유념하고 봐주세요!
# 표준 string 클래스
- 문자열의 처리를 목적으로 정의된 클래스
- 이 클래스의 사용을 위해서는 헤더파일 <string>을 포함해야 함
# 표준 string 클래스의 분석
1) 문자열을 인자로 전달받는 생성자의 정의
string str="I like string class";
/* 동치 */
string str("I like string class");
2) 생성자, 소멸자, 복사 생성자 그리고 대입 연산자의 정의
- 저장하고자 하는 문자열의 길이가 일정치 않으므로, 문자열의 저장을 위한 메모리 공간을 생성자 내에서 동적 할당해야 하고,
- 이로 인해 소멸자를 정의해야 하며,
- 깊은 복사를 하는 복사 생성자와 대입 연산자까지 함께 정의
3) 결합된 문자열로 초기화된 객체를 반환하는 + 연산자의 오버로딩
4) 문자열을 덧붙이는 += 연산자의 오버로딩
5) 내용비교를 진행하는 == 연산자의 오버로딩
6) 콘솔입출력이 가능하도록 <<, >> 연산자의 오버로딩
[출처] : 윤성우 저, "열혈 C++ 프로그래밍", 오렌지미디어
'Programming > 열혈 C++ 프로그래밍(저자 윤성우)' 카테고리의 다른 글
Ch 15. 예외처리(Exception Handling) (0) | 2020.08.18 |
---|---|
Ch 13-14. 템플릿(Template) 1, 2 (0) | 2020.08.18 |
Ch 11. 연산자 오버로딩 2 (0) | 2020.08.17 |
Ch 10. 연산자 오버로딩 1 (0) | 2020.08.17 |
Ch 07-09. 상속의 이해, 상속의 다형성, 가상(Virtual)의 원리와 다중상속 (0) | 2020.08.17 |