아주 사소한 기능이 주어지면
int transform(int val) {
return (val + 7) / 8;
}
이 함수를 함수로 쉽게 변환하여 변수를 constexpr
정의 할 때 constexpr
다음과 같이 사용할 수 있다는 것이 매우 분명합니다 .
constexpr int transform(int val) {
return (val + 7) / 8;
}
내 가정은 함수가 비 constexpr
컨텍스트 에서 여전히 호출 될 수 있고 컴파일 타임 상수 변수를 정의하는 데 도움을 줄 수 있기 때문에 이것은 엄격하게 개선 된 것이라고 가정 합니다.
내 질문은, 이것이 나쁜 생각 인 상황이 있습니까? 마찬가지로이 기능을 만들어서 constexpr
특정 상황에서이 기능을 더 이상 사용할 수 없거나 잘못 작동하는 상황을 경험할 수 있습니까?