Есть ли способ отметить параметр функции как contexpr?C++

Программы на C++. Форум разработчиков
Ответить
Anonymous
 Есть ли способ отметить параметр функции как contexpr?

Сообщение Anonymous »

Пример кода, который я хочу реализовать: < /p>

Код: Выделить всё

// Below code doesn't work
consteval bool func2(const char* str) {
return str[0] == 'a';
}

// Error: ‘str’ is not a constant expression
bool func1(const char* str, bool flag) {
return flag && func2(str);
}

int main() {
bool flag = false;
std::cout  я знаю, что могу использовать параметр шаблона для достижения этой цели. Но, к сожалению, я не могу обрабатывать строковые литералы так же.[code]// Below code works
consteval bool func2(int num) {
return num == 1;
}

template 
bool func1(bool flag) {
return flag && func2(N);
}

int main() {
bool flag = false;
std::cout 

Подробнее здесь: [url]https://stackoverflow.com/questions/79452084/is-there-any-way-to-mark-a-function-parameter-as-constexpr[/url]
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C++»