Вопросы по теме 'compile-time'

C ++ Получить имя типа в шаблоне
Я пишу несколько шаблонных классов для анализа некоторых файлов текстовых данных, и поэтому, вероятно, подавляющее большинство ошибок синтаксического анализа будет из-за ошибок в файле данных, которые по большей части написаны не программистами, и...
140267 просмотров
schedule 21.09.2021

Как я могу получить общее имя типа параметра во время компиляции?
Я пытаюсь реализовать общий класс. У него должно быть свойство с атрибутом, который принимает константу времени компиляции, которую я хочу установить в качестве имени типа параметра. Что-то вроде этого: namespace Example { public class...
767 просмотров

Почему нельзя использовать параметры constexpr?
Было бы полезно иметь параметры constexpr, чтобы различать значения, известные компилятору, и таким образом иметь возможность обнаруживать ошибки во время компиляции. Примеры: int do_something(constexpr int x) { static_assert(x > 0, "x must...
1931 просмотров
schedule 08.09.2021

Алгоритмически инициализировать std :: array во время компиляции
Рассмотреть возможность: static constexpr unsigned num_points{ 7810 }; std::array< double, num_points > axis; for (int i = 0; i < num_points; ++i) { axis[i] = 180 + 0.1 * i; } axis - константа класса. Я не хочу...
3340 просмотров

Могу ли я создать константу из переменной env времени компиляции в csharp?
Мы используем Hudson для создания наших проектов, а Hudson удобно определяет переменные среды, такие как "% BUILD_NUMBER%" во время компиляции. Я хотел бы использовать эту переменную в коде, чтобы мы могли делать такие вещи, как регистрировать,...
8831 просмотров
schedule 13.01.2022

Как передать информацию о диапазоне компилятору C ++?
Есть ли способ указать компилятору, что вы знаете, что значение конкретной переменной должно находиться в определенном диапазоне в определенной точке кода, чтобы помочь компилятору в оптимизации? Я пишу библиотеку, которая позволяет узнать диапазон...
420 просмотров
schedule 24.02.2022

Как я могу распечатать результат sizeof () во время компиляции на C?
Как я могу распечатать результат sizeof () во время компиляции на C? На данный момент я использую статическое утверждение (домашнее приготовленное на основе других веб-ресурсов) для сравнения результата sizeof () с различными константами. Хотя это...
29150 просмотров
schedule 25.02.2022

Идентификатор типа С++ во время компиляции
Я хочу сгенерировать хэш для класса на основе его производного типа во время компиляции. Сегодня я генерирую это так: template<class Type> class TypeBase { public: static const unsigned s_kID; }; template<class Type> const...
3016 просмотров
schedule 24.03.2022

Как ссылки разрешаются во время компиляции при использовании динамической компоновки во время загрузки или выполнения в программах на C ++?
Я предполагаю, что мой вопрос очень прост, я не могу видеть всю картину при использовании динамической компоновки (либо во время загрузки, либо во время выполнения) в программах, так как мне интересно, как ведет себя компоновщик во время компиляции,...
98 просмотров
schedule 26.03.2022

Получение идентификатора сборки в приложении Java
Есть ли у кого-нибудь простое предложение для записи идентификатора сборки (сгенерированного во время компиляции), который отображается в строке заголовка приложения во время выполнения? При сборке из Eclipse все, что мне нужно, это идентификатор,...
3553 просмотров

Глобальная структура в c (элемент инициализатора не является константой времени компиляции)
Я довольно новичок в C, и у меня есть некоторые проблемы. У меня есть следующее определение структуры: struct env { struct env *next; char varName[8]; int n; }; Я хочу создать несколько таких структур в некоторых из моих функций,...
1972 просмотров
schedule 12.04.2022

Обнаружение времени компиляции или выполнения в функции constexpr
Я был взволнован, когда constexpr был представлен в C ++ 11, но, к сожалению, я сделал оптимистические предположения о его полезности. Я предположил, что мы можем использовать constexpr где угодно, чтобы поймать буквальные константы времени...
4202 просмотров
schedule 18.04.2022

Как я могу реализовать системные функции без макросов в современном С++
JetBrains ReSharper для C++ сказал мне заменить что-то вроде #ifdef _WIN32 # define cls system("cls") #else // Assuming Unix # define cls system("tput clear") #endif // _WIN32 с функциями шаблона constexpr. Тем не менее, я пытался...
51 просмотров

Оценивается ли sizeof в С++ во время компиляции или во время выполнения?
Например, результат этого фрагмента кода зависит от того, на какой машине работает компилятор или исполняемый файл? sizeof(short int)
29763 просмотров
schedule 01.05.2022

Целочисленные значения во время компиляции
Мне нужно написать некоторые константы в разных файлах с некоторым целочисленным идентификатором. Например: #define MESSAGE_FIRST 0 В другом файле: #define MESSAGE_ANOTHER 1 Любые способы получить этот идентификатор автоматически во...
773 просмотров
schedule 29.04.2022

Можно ли создать вектор, заполненный нулями размера N, используя метапрограммирование шаблонов в С++ 11
Я узнаю больше о метапрограммировании шаблонов на С++, и после стандартного создания простых чисел и факториала во время компиляции я теперь пытаюсь создать класс Matrix во время компиляции. Подзадача этого состоит в том, чтобы создать вектор размера...
107 просмотров

GCC Проверка входных констант функций во время компиляции
Я хочу использовать gcc для проверки входных данных функции во время компиляции, если компилятор знает, что они являются константами. У меня есть решение, которое почти работает, и, насколько я понимаю, оно должно работать. Примечание....
1841 просмотров
schedule 11.05.2022

Что такое полиморфизм времени компиляции и почему он применим только к функциям?
Что такое полиморфизм времени компиляции и почему он применим только к функциям?
24767 просмотров
schedule 31.05.2022

[Утверждения времени компиляции С++]: можем ли мы выдать ошибку компиляции, если какое-то условие не выполняется?
Я написал функцию: template<int N> void tryHarder() { for(int i = 0; i < N; i++) { tryOnce(); } } но я хочу, чтобы он компилировался только в том случае, если N находится между 0 и 10. Могу ли я это сделать? Как?
3482 просмотров
schedule 02.06.2022

Xcode — профилирование и оптимизация времени компиляции C++
Как я могу профилировать и оптимизировать время компиляции C++ с помощью Xcode? В настоящее время я работаю над игровым проектом C++ на основе Cocos2d-x с более чем 250 исходными файлами. Время компиляции (без Cocos2d-x) в настоящее время...
1116 просмотров
schedule 09.06.2022