std string

std::string은 문자열 길이와 메모리 관리를 객체가 맡는다

C 스타일 문자열과 달리 길이, 복사, 결합, 비교 같은 작업을 안전한 클래스 인터페이스로 다룰 수 있다.

문자열 처리 비교

safe string

길이

문자열 끝을 직접 찾지 않아도 size()로 현재 길이를 알 수 있다.

소유권

객체가 내부 버퍼를 관리해 수동 메모리 실수를 줄인다.

연산

+, ==, substr 같은 연산과 메서드로 일반적인 조작을 표현한다.

호환

C API와 연결할 때는 c_str()의 수명과 변경 가능성을 주의한다.

textstringmethodresult
읽는 법

std::string을 쓰면 문자열을 문자 배열이 아니라 값처럼 다룰 수 있지만, C API 경계에서는 버퍼 수명을 다시 확인해야 한다.