Вопросы по теме 'constant-expression'

clang говорит, что вызов функции void consteval не является постоянным выражением
clang (trunk) выдает ошибку для следующего кода: consteval void f() {} int main() { f(); // error: call to consteval function 'f' is not a constant expression // note: subobject of type 'void' is not initialized } в то время...
480 просмотров

constexpr разница между gcc v10 и v9: ошибка или функция
Если скомпилирован с помощью gcc v10, приведенный ниже код выдает ошибку, но для gcc v9 код в порядке. template<auto N> struct A { constexpr auto size() const { return N; } }; template<typename T> void foo1(const...
101 просмотров
schedule 20.04.2022

C11 и вычисление постоянного выражения в метках переключателя
после этого вопроса Почему gcc не разрешает const int как выражение case? , в основном то же, что и Какие продвинутые типы используются для сравнения выражений switch-case? или Есть ли способ использовать постоянный массив с постоянным индексом в...
824 просмотров

Незавершенная строковая константа в Google Map API с использованием PHP
у меня проблема с незавершенной строковой константой. вот мой код в PHP: 'html' => '<div><table><td><tr><img src="' . "http://www.simbawave.com/_lib/file/img/hotel/$FolderHotel/$NamaFile" . '"width="200"...
251 просмотров
schedule 02.06.2022

Инициализация переменной constexpr
[dcl.constexpr] p10, предложение 3 гласит: В любом объявлении переменной constexpr полное выражение инициализации должно быть постоянным выражением Однако в этом заявлении: constexpr int a = 10; constexpr int b = a; a не...
108 просмотров

Базовое постоянное выражение и индексация массива
Ссылка на сегмент кода под следующим: Основные константные выражения int main() { const std::size_t tabsize = 50; int tab[tabsize]; // OK: tabsize is a constant expression std::size_t n = 50; const std::size_t sz = n; int...
55 просмотров
schedule 22.06.2022

static const двойная инициализация в C++
У меня есть устаревший код, который я создаю с помощью «более новых» компиляторов и сталкиваюсь с некоторыми ошибками двойной инициализации static const, которые не имеют для меня смысла. Вот что у меня есть: //header.h class myclass {...
1336 просмотров

Будет ли компилятор Java предварительно вычислять суммы литералов?
int i = 10 + 20; Верно ли, что компилятор обработает этот код, добавив 10 + 20 , а байтовый код такой же, как для этой строки кода? int i = 30; Где я могу прочитать об этом?
801 просмотров
schedule 27.07.2022

Создание лямбда-выражения ConstantExpression со строковым значением
Я хочу создать лямбда-выражение, предоставляющее имя свойства, значение (в виде строки) и тип свойства (в виде типа). Проблема в том, что строка Expression.Constant(value1, propertyType); value1, которая передается в Foo, является строкой. и...
2660 просмотров

не может появляться в константном выражении
В следующей программе на С++: static const int row = (dynamic_cast<int>(log(BHR_LEN*G_PHT_COUNT)/log(2))); static const int pht_bits = ((32*1024)/(G_PHT_COUNT * G_PHT_COUNT * BHR_LEN)); unsigned char tab[pht_bits][1<<row]; Я...
2453 просмотров
schedule 02.04.2023

Почему constexpr работает с шаблонами?
Рассмотрим следующий код: template<typename T> constexpr inline T fma(T a, T b, T c) { return a * b + c; } Это прекрасно компилируется. Но почему это? Теоретически функции constexpr могут вызывать только другие функции...
463 просмотров

Путаница с постоянными выражениями
Это своего рода продолжение для этой темы и касается небольшой части Это. Как и в предыдущей теме, предположим, что наш компилятор имеет constexpr функций для std::initializer_list и std::array . А теперь давайте сразу к делу. Это...
2692 просмотров

Объявление символических констант в заголовке без инициализации?
Обычной практикой является определение символических констант в заголовочном файле: #define T_FOO 1 #define T_BAR 2 Уродливый. static const int T_FOO = 1; static const int T_BAR = 2; Лучше, т.к. не препроцессор. enum { T_FOO...
321 просмотров

значение типа enum как длина массива в C++
Как мы все знаем, длина массива в C++ должна быть определена. Тогда мы можем использовать: const int MAX_Length=100; or: #define MAX_LENGTH 100 для определения длины массива перед компиляцией. Но когда я читал книгу С++ для...
3603 просмотров

g ++ жалуется, что функция constexpr не является постоянным выражением
Я свел свою проблему к следующему: struct A { static constexpr std::size_t f() { return 4; } }; template<std::size_t N> struct B : A { alignas(A::f()) char a[N]; }; Я не вижу, что с этим не так, но если я попытаюсь...
359 просмотров
schedule 20.11.2022

Минимальное гарантированное свертывание констант в C
Вопрос Мне любопытно, есть ли какие-либо гарантии того, что константное свертывание выполняется в C. Где я смотрел По этой ссылке на сайте, репутация которого мне неизвестна, дается небрежный комментарий: Все компиляторы C могут...
282 просмотров

Есть ли *любая* ситуация, при которой for _ в [1,2,3] вообще не будет зацикливаться?
Я писал код и сделал ошибку, которая упрощает: func f() -> Int { for _ in [1,2,3] { return 1 } } И компилятор показывает мне ошибку о том, что f отсутствует возврат, что заставило меня осознать свою ошибку. Я забыл...
62 просмотров
schedule 22.07.2023

Постоянное выражение с @PreAuthorize в Spring Boot
Поэтому я попытался прочитать свои роли из свойств приложения и передать их в аннотацию @PreAuthrorize в виде строки ( ссылка ) без конечного продукта. Когда строка жестко закодирована, все работает нормально, но не тогда, когда я пытаюсь загрузить...
57 просмотров

Как я могу установить рабочую точку останова на постоянное выражение?
У меня есть код Perl, который использует константу с таким блоком инициализации: use constant C => map { ...; } (0..255); Когда я пытаюсь установить точку останова в строке ...; , это не работает, что означает: я могу установить...
145 просмотров

Как получить ошибку времени компиляции в постоянном вычисляемом выражении?
У меня есть Assert функция, которую я использую для оценки утверждения: если предварительное условие не выполняется во время выполнения, эта функция выдаст сообщение об ошибке и завершит программу. если предварительное условие не...
354 просмотров
schedule 15.03.2024