0
ответов

Альтернативы использованию «#define» в C++? Почему это осуждается?

Я занимаюсь разработкой на C++ меньше года, но за это время я слышал от многих людей, что #define ужасен. Теперь я понимаю, что он интерпретируется препроцессором, а не...
вопрос задан: 25 June 2016 18:28
0
ответов

Как создать сеттеры и геттеры и определить Q_PROPERTY() с помощью препроцессора C++

Я разрабатываю класс QT4. Пока мой класс выглядит так: class GIHNode: public QObject, public QGraphicsItem { Q_OBJECT Q_INTERFACES(QGraphicsItem) [...] публичный: недействительным setInteger (целое число); int ...
вопрос задан: 25 June 2016 12:39
0
ответов

Есть ли директива препроцессора для обнаружения поддержки С++ 11x? [дубликат]

Если у меня есть код, в котором я хотел бы использовать расширения С++ 11x как можно больше, но иметь запасной вариант, если это не поддерживается. В настоящее время версия GCC для OSX и компилятор VisualC не имеют ничего общего с...
вопрос задан: 25 June 2016 11:41
0
ответов

Что значит #line?

Что делает следующая строка? #line 25 "CSSGrammar.y" А что с расширением?
вопрос задан: 25 June 2016 08:33
0
ответов

Как я могу увидеть результат работы препроцессора Visual C ++? [дубликат]

Я хочу увидеть результат препроцессора Visual C ++ в моем коде, то есть эквивалент gcc -E. Да хоть убей, я не могу найти соответствующий переключатель компилятора. Как мне это сделать?
вопрос задан: 24 June 2016 20:31
0
ответов

Как мне сгенерировать целое число из строкового литерала во время компиляции?

В C ++ возможно ли сгенерировать целое число из строкового литерала, используя только средства времени компиляции? Например, если все, что у нас есть, это литерал «6», есть ли способ использовать его в качестве шаблона ...
вопрос задан: 24 June 2016 18:10
0
ответов

#if внутри #define?

Я работаю с некоторым унаследованным кодом, который генерирует много кода через #defines. Теперь я знаю, что невозможно иметь #ifdef внутри #define, но возможен ли #if? Я бы хотел добавить некоторые ...
вопрос задан: 24 June 2016 08:01
0
ответов

#pragma warning не подавляет предупреждение

Один из моих файлов .cpp генерирует предупреждение C4275 из-за стороннего заголовка I #include ... (предупреждение запускается из-за того, что класс экспорта DLL наследуется от класса экспорта не из библиотеки DLL, насколько я могу судить) ...
вопрос задан: 23 June 2016 18:35
0
ответов

Как вы используете препроцессор для создания кроссплатформенной библиотеки?

Я хочу использовать тот же подход #ifdef, который используется в WxWidgets, SDL и т. Д. Единственная проблема в том, что Я не знаю, как им пользоваться. Скажем, я хочу создать класс, который рисует прямоугольник. Я хочу, чтобы он использовал cairo при вк
вопрос задан: 23 June 2016 18:32
0
ответов

Сложный макрос #define с несколькими аргументами для строк

Я работаю над проектом, и у меня есть проблема, которую, как мне кажется, можно решить с помощью макросов, но, учитывая характер проблемы, у меня нет опыта напишу сам. Вот чего я ожидал, поскольку ...
вопрос задан: 23 June 2016 15:54
0
ответов

Используйте двойные двоеточия (: :) в #define

Могу ли я использовать двойные двоеточия в #define? Я хотел бы сохранить некоторые записи в файлах реализации, например вот так: // foo.h #define template template #define foo :: foo :: ...
вопрос задан: 23 June 2016 15:53
0
ответов

Как вывести предварительно обработанный код И скомпилировать его (Visual Studio)

Я генерирую вывод препроцессора (.i) из Visual Studio, но также хочу выполнить сборку . Есть ли комбинация флагов, которые будут выводить файл .i без остановки компилятора ...
вопрос задан: 23 June 2016 15:51
0
ответов

Полно ли метапрограммирование на C++ препроцессоре Turing-complete?

Я знаю, что метапрограммирование шаблонов на C++ является Turing-complete. То же самое можно сказать и о препроцессорном метапрограммировании?
вопрос задан: 22 June 2016 20:16
0
ответов

Использование #undef в C ++

Я изучаю фрагмент кода из библиотек GSL и озадачен несколькими строками в начале файла заголовка. Я понимаю, что делают #undef, #ifdef и т. Д., Но не понимаю, почему они ...
вопрос задан: 22 June 2016 16:32
0
ответов

Допустим ли этот макрос для C ++ или чего-то еще? И если это разрешено законом, как это работает

WebKit имеет много таких строк препроцессора: #if MACRO1 (MACRO2) Например: #if PLATFORM (MAC) || (ПЛАТФОРМА (QT) && ИСПОЛЬЗОВАНИЕ (QTKIT)) #include "MediaPlayerPrivateQTKit.h" #if USE (AVFOUNDATION) ...
вопрос задан: 22 June 2016 13:55
0
ответов

Можно ли вложить директивы препроцессора #if в C ++?

У меня есть вопрос о директивах препроцессора в C ++: Например: #ifndef QUESTION // some здесь код #ifndef ВОПРОС // здесь какой-то код #endif #endif Можно ли использовать его таким образом и можно ли C + ...
вопрос задан: 22 June 2016 12:02
0
ответов

Добавление кавычек в аргумент в препроцессоре C ++

Я хотел бы передать имя включаемого файла в качестве аргумента компилятора, чтобы я мог изменять большое количество параметров конфигурации . Однако моя сборка C ++ выполняется с помощью процесса, подобного make-файлу, который удаляет ...
вопрос задан: 22 June 2016 11:29
0
ответов

Использование внутренней прагмы (sqrt, pow) в C #?

Резюме по C ++ Использование внутренней команды #pragma в секции препроцессора вашего кода значительно увеличить скорость большинства вызовов математических функций. #pragma intrinsic (sqrt, pow) Приведенный выше код ...
вопрос задан: 22 June 2016 11:27
0
ответов

Скрыть блок кода C ++ из Intellisense

Для того, чтобы Чтобы обойти некоторые недостатки Intellisense в MSVC ++ 2010, я хотел бы «скрыть» некоторый блок кода от Intellisense, но не от компилятора. Например: #ifndef INTELLISENSE void foo () ...
вопрос задан: 22 June 2016 08:29
0
ответов

Условная компиляция для операций перемещения

Как я могу проверить, поддерживает ли мой компилятор ссылки на rvalue или нет? Есть ли стандартный макрос препроцессора или у разных компиляторов разные макросы? В идеале я хотел бы написать следующее: # ...
вопрос задан: 22 June 2016 08:28
0
ответов

Воровство внутри конструктора перемещения

Во время реализации конструктора перемещения игрушечного класса я заметил шаблон: array2D (array2D && that) {data_ = that.data_; that.data_ = 0; height_ = that.height_; ...
вопрос задан: 22 June 2016 08:27
0
ответов

Почему вставка знака евро внутри строковый литерал, использующий UTF8, не создает UCN?

В спецификации сказано, что на этапе 1 компиляции любой символ исходного файла, не входящий в базовый набор исходных символов (2.3), заменяется универсальным именем-символом, обозначающим этот символ. И ...
вопрос задан: 21 June 2016 22:19
0
ответов

Директива отладки и препроцессора

Для отладки у меня есть много вызовов функции журнала отладки в моем приложении. Конечно, в производственной версии эти отладочные вызовы нужно пропустить. Вместо того, чтобы писать: #if DEVEL == 1 Log :: ...
вопрос задан: 21 June 2016 22:17
0
ответов

Есть ли определение препроцессора, которое определяется, если компилятор - MSVC?

Так что я могу сделать что-то вроде #ifdef MSVC // здесь делаем код, специфичный для компилятора #endif
вопрос задан: 21 June 2016 14:57
0
ответов

C ++ define interface

#define interface class (подробнее - http://www.codeproject.com/KB/cpp/CppInterfaces.aspx) смысл? Проясняет ли это различие между интерфейсами и реализующими их классами? ...
вопрос задан: 20 June 2016 22:22
0
ответов

Как сделать строку препроцессора, которая работает как с узкой, так и с широкой

Мне нужно создать два проекта с разными именами. Оба проекта будут использовать один и тот же код. Итак, я начал заменять места, вызывающие старое имя, на препроцессор в stdafx.h, называемый APP_NAME. В ...
вопрос задан: 20 June 2016 22:21
0
ответов

How to make preprocessor generate a string for __LINE__ keyword?

__FILE__ is replaced with "MyFile.cpp" by C++ preprocessor. I want __LINE__ to be replaced with "256" string not with 256 integer. Without using my own written functions like toString(__LINE__); Is ...
вопрос задан: 20 June 2016 20:33
0
ответов

#includewhere

Предназначен ли #include для использования только для заголовков или это просто механическое «вставьте этот код сюда», которое можно использовать в любом месте кода? Что, если я использую его в середине cpp ...
вопрос задан: 20 June 2016 20:03
0
ответов

Макрос препроцессора для получения имени текущего класса? [дубликат]

Подобно тому, что __FUNCTION__ делает для текущей функции, существует ли макрос препроцессора для получения имени текущего класса?
вопрос задан: 20 June 2016 20:02
0
ответов

Как узнать фактический порядок включаемых файлов после предварительной обработки?

У меня есть один файл .cpp, который включает несколько файлов заголовков. Эти файлы заголовков могут также включать другие файлы заголовков. Включены средства защиты, чтобы предотвратить включение одного и того же файла дважды. Зная, что ...
вопрос задан: 20 June 2016 18:19