Вопросы по теме '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 просмотров
schedule
22.10.2021
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 просмотров
schedule
12.05.2022
Незавершенная строковая константа в 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 просмотров
schedule
27.05.2022
Базовое постоянное выражение и индексация массива
Ссылка на сегмент кода под следующим:
Основные константные выражения
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 просмотров
schedule
06.07.2022
Будет ли компилятор Java предварительно вычислять суммы литералов?
int i = 10 + 20;
Верно ли, что компилятор обработает этот код, добавив 10 + 20 , а байтовый код такой же, как для этой строки кода?
int i = 30;
Где я могу прочитать об этом?
801 просмотров
schedule
27.07.2022
Создание лямбда-выражения ConstantExpression со строковым значением
Я хочу создать лямбда-выражение, предоставляющее имя свойства, значение (в виде строки) и тип свойства (в виде типа).
Проблема в том, что строка Expression.Constant(value1, propertyType); value1, которая передается в Foo, является строкой. и...
2660 просмотров
schedule
29.08.2022
не может появляться в константном выражении
В следующей программе на С++:
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 просмотров
schedule
24.03.2023
Путаница с постоянными выражениями
Это своего рода продолжение для этой темы и касается небольшой части Это. Как и в предыдущей теме, предположим, что наш компилятор имеет constexpr функций для std::initializer_list и std::array . А теперь давайте сразу к делу.
Это...
2692 просмотров
schedule
30.10.2022
Объявление символических констант в заголовке без инициализации?
Обычной практикой является определение символических констант в заголовочном файле:
#define T_FOO 1
#define T_BAR 2
Уродливый.
static const int T_FOO = 1;
static const int T_BAR = 2;
Лучше, т.к. не препроцессор.
enum
{
T_FOO...
321 просмотров
schedule
16.04.2023
значение типа enum как длина массива в C++
Как мы все знаем, длина массива в C++ должна быть определена. Тогда мы можем использовать:
const int MAX_Length=100;
or:
#define MAX_LENGTH 100
для определения длины массива перед компиляцией. Но когда я читал книгу С++ для...
3603 просмотров
schedule
27.03.2023
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 просмотров
schedule
17.09.2023
Есть ли *любая* ситуация, при которой 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 просмотров
schedule
04.04.2023
Как я могу установить рабочую точку останова на постоянное выражение?
У меня есть код Perl, который использует константу с таким блоком инициализации:
use constant C => map {
...;
} (0..255);
Когда я пытаюсь установить точку останова в строке ...; , это не работает, что означает: я могу установить...
145 просмотров
schedule
22.12.2023
Как получить ошибку времени компиляции в постоянном вычисляемом выражении?
У меня есть Assert функция, которую я использую для оценки утверждения:
если предварительное условие не выполняется во время выполнения, эта функция выдаст сообщение об ошибке и завершит программу.
если предварительное условие не...
354 просмотров
schedule
15.03.2024