일반 멤버 함수
this현재 객체를 가리킵니다.
변경상태를 읽고 바꿀 수 있습니다.
const 멤버 함수
this읽기 전용 객체처럼 취급됩니다.
변경논리적으로 상태를 바꾸면 안 됩니다.
static 멤버
this 없음특정 객체 없이 호출됩니다.
공유클래스 공통 상태만 다룹니다.
class Buffer {
public:
std::size_t size() const { return data_.size(); }
void append(std::string_view chunk) { data_ += chunk; }
private:
std::string data_;
};
파생 값저장할지 계산할지 먼저 정합니다.
const 누락읽기 함수가 const 객체에서도 호출되는지 봅니다.
공유 상태static이 테스트 순서에 의존하지 않는지 확인합니다.
정리: 객체별 상태는 멤버 변수, 상태 변경은 일반 멤버 함수, 읽기 약속은 const, 객체와 무관한 공유 기준은 static입니다.