태그: const
8편
-
C++ const·constexpr 내부 동작 | 평가 시점·if constexpr
const와 constexpr의 평가 시점 차이, constexpr 함수 제약, if constexpr 분기 제거, consteval 즉시 함수, 프로덕션 const 정확성까지 컴파일러 관점에서 정리합니다.
-
static·extern·const·constexpr·inline·volatile·mutable: C++ 키워드가 실제로 바꾸는 것
C++ 주요 키워드 정리. static, extern, const, constexpr, inline, volatile, mutable의 의미와 사용법, 링키지와 저장 기간, 메모리 레이아웃, 키워드 조합 패턴을 다룹니다.
-
JavaScript var vs let vs const: 스코프·호이스팅 차이와 선택 기준
var의 함수 스코프와 let·const의 블록 스코프, 호이스팅과 TDZ, 재할당·재선언 규칙을 비교표와 예제로 정리하고, const 객체가 수정되는 이유와 루프 클로저 버그, ESLint로 선언 규칙을 강제하는 방법을 설명합니다.
-
JavaScript 변수와 데이터 타입: let, const, var와 원시 타입
let·const·var 선언 차이와 블록·함수·전역 스코프, 원시 타입과 참조 타입, typeof와 암묵적 타입 변환, var·let·함수 호이스팅과 TDZ를 변수 스왑·안전한 숫자 변환 같은 예제로 설명합니다.
-
C++ const 에러: passing as const 컴파일 에러 원인과 const 정합성
passing as const, discards qualifiers, read-only variable 대입처럼 const 때문에 나는 컴파일 에러 10가지를 원인별로 풀고, const 멤버 함수와 오버로드, 포인터에서 const 위치를 읽는 법, mutable과 const_cast를 써도 되는 경우를 예제로 설명합니다.
-
C++ mutable: const 멤버 함수에서 캐시·카운터·mutex를 수정하는 경우와 남용 주의
const 멤버 함수 안에서도 캐시, 통계 카운터, mutex처럼 객체의 논리적 상태와 무관한 멤버를 수정할 수 있게 하는 mutable의 쓰임새와, const_cast와의 차이, 람다의 mutable, 남용했을 때 생기는 문제를 예제로 설명합니다.
-
C++ const 정확성: const 멤버 함수·포인터·참조와 mutable을 쓸 자리
const 변수와 const 멤버 함수, const 포인터와 포인터가 가리키는 대상의 const 구분, const 참조 매개변수, mutable을 써야 하는 캐시·뮤텍스 사례를 예제로 설명하고 const 정확성을 적용하는 체크리스트를 제공합니다.
-
const·noexcept·[[nodiscard]]로 C++ 인터페이스 의도 명확히 하기
const 없이 넘긴 설정이 어딘가에서 바뀌거나 init() 실패를 무시하는 문제를 const correctness, noexcept, [[nodiscard]]로 막는 방법을 다룹니다. mutable의 쓰임, 이동 생성자에 noexcept가 없을 때 vector가 복사를 고르는 이유도 설명합니다.