상수 이름 (Constant Names)¶
constexpr 또는 const 로 선언되고 해당 값이 프로그램 기간 동안 고정되는 변수의 이름은 앞에 "k" 뒤에 대소문자가 혼합되어 지정됩니다. 밑줄은 대문자를 구분에 사용할 수 없는 드문 경우에 구분 기호로 사용할 수 있습니다. 예를 들어:
정적 저장 기간이 있는 모든 변수(예: 정적 변수 및 전역 변수, 자세한 내용은 저장 기간 참조)는 정적 상수 클래스 데이터 멤버인 변수와 템플릿의 다양한 인스턴스화가 다른 값을 가질 수 있는 템플릿의 변수를 포함하여 이 방식으로 이름을 지정해야 합니다. 이 규칙은 자동 변수와 같은 다른 저장소 클래스의 변수에 대해서는 선택 사항입니다. 그렇지 않으면 일반적인 변수 명명 규칙이 적용됩니다. 예를 들어:
void ComputeFoo(absl::string_view suffix) {
// Either of these is acceptable.
const absl::string_view kPrefix = "prefix";
const absl::string_view prefix = "prefix";
...
}
void ComputeFoo(absl::string_view suffix) {
// Bad - different invocations of ComputeFoo give kCombined different values.
const std::string kCombined = absl::StrCat(kPrefix, suffix);
...
}
이해하기 쉽게 설명하기¶
핵심: 상수는 k 접두사 + PascalCase¶
constexpr/const로 선언되고 값이 프로그램 내내 고정되는 변수는 k 다음에 PascalCase로 씁니다.
어디에 적용되나¶
- 정적 저장 기간 변수(전역·정적 변수, 정적 상수 클래스 멤버 등)는 반드시 이 규칙을 따릅니다.
- 지역 변수(자동 저장 기간)는 선택 — 일반 변수 명명을 써도 됩니다.