나는 이런 식으로 뭔가 보이는 constexpr 기능이 있습니다 GCC의 4.6.3와이 컴파일, 그러나constexpr 함수 인수가 const인지 static_assert에 알려주는 방법은 무엇입니까?
constexpr int foo(int bar)
{
static_assert(bar>arbitrary_number, "Use a lower number please");
return something_const;
}
을 나에게 말해 계속을 오류
: '바'는 상수 표현에 나타날 수 없습니다
나는
constexpr int foo(constexpr const int bar)
{
static_assert(bar>arbitrary_number, "Use a lower number please");
return something_const;
}
뭔가를 시도했지만 constexpr는 함수 인수에 사용할 수 없습니다.
바는 항상 컴파일 타임 상수라는 컴파일러에 알리는 간단한 방법이 있습니까?
해당 부분을 성문화하는 것을 완전히 잊어 버렸습니다. Thanks @ Henrik – TravisG
constexpr 함수는 const가 아닌 인수를 사용하여 호출 할 수 있으며 단순히 constexpr'ness를 상실합니다. –
고마워, 나는 그걸 몰랐다. – TravisG