C/C++ 관련 헷갈리기 쉬운 것 정리9(저장용,메모용, 윤성우 열혈 C++ 프로그래밍 정리 CH 12)

RisingJade의 개발기록·2022년 2월 25일
0

String 클래스의 디자인


12-1. C++의 표준과 표준 string 클래스

표준 string클래스

C++표준 라이브러리에는 string이라는 이름의 클래스가 정의되어있다. 문자열의 처리를 목적으로 정의된 클래스이머, 이 클래스의 사용을 위해서는 헤더파일 <string>을 포함해야 한다.

12-2. 문자열 처리 클래스의 정의

표준 string 클래스 분석

  • 하나. 문자열을 인자로 전달받는 생성자의 정의
    string 객체의 대입은
String str = "I like";
String str("I list");

이런식으로 문자열을 전달받는 생성자의 호출로 이어진다.

  • 둘, 생성자, 소멸자, 복사 생성자 그리고 대입 연산자의 정의
    String 클래스는 문자열을 저장 및 표현하는 클래스이다. 그런데 저장하고자 하는 문자열의 길이가 일정치 않으므로,
    문자열의 저장을 위한 메모리 공간을 생성자 내에서 동적 할당해야한다. 그리고 이로 인해 소멸자도 정의해야하며, 깊은 복사를 하는
    복사 생성자와 대입 연산자까지 함께 정의해야 한다.
  • 그외, +, +=, ==, <<, >> 오버로딩도 해야한다.
profile
언제나 감사하며 살자!

0개의 댓글