Результаты поиска по запросу "macros"

5 ответов

Какой макрос для переноса специфичного для Mac OS X кода в C / C ++

Читая различные источники C и C ++, я столкнулся с двумя макросами__APPLE__ а также__OSX__, Я нашел много использования__OSX__ в различных кодах, особенно тех, которые происходят из*BSD системы. Однако иногда я нахожу, что тестирование__OSX__ ...

5 ответов

Макро-производящие макросы в C?

Я хотел бы получитьCПрепроцессор для генерации макросов для меня (т.е. я использую только C99). Я бы написал макрос #define make_macro(in) <...magic here...>и когда я положил make_macro(name1) make_macro(name2)позже в коде это расширится ...

7 ответов

Как передать шаблоны с несколькими аргументами в макросы?

Скажем, у меня есть такой макрос: #define SET_TYPE_NAME(TYPE, NAME) \ template<typename T> \ std::string name(); \ \ template<> \ std::string name<TYPE>() { \ return NAME; \ }Это не сработает, если я передам шаблон, имеющий несколько параметров, ...

ТОП публикаций

6 ответов

Обнаружение функции в C ++ во время компиляции

Есть ли способ, предположительно используя шаблоны, макросы или их комбинацию, чтобы я мог в общем случае применить функцию к различным классам объектов, но заставить их реагировать по-разному, если у них нет определенной функции? Я специально ...

1 ответ

Макрос для получения текущего пространства имен и имени функции (но не полной подписи)?

Существует ли макрос C ++, который получает текущее пространство имен и имя функции? Пример: namespace foo { namespace bar { void baz(int i, double d) { std::cout << MACRO << std::endl; } } }будет печататьfoo::bar::baz, я знаю__FUNCTION__ но это ...

4 ответа

c (a | d) + r макрос в ракетке

Интересно, можно ли написать макрос в Racket, который бы переводил любую форму (c (a | d) + r xs), где c (a | d) + r - это регулярное выражение, совпадающее с car, cdr, caar, cadr, ... и т. д., в соответствующую композицию первого ...

5 ответов

Что такое «: - !!» в коде C?

Я наткнулся на этот странный макрос код в/usr/include/linux/kernel.h [https://github.com/torvalds/linux/blob/ff2d8b19a3a62559afba1c53360c8577a7697714/include/linux/kernel.h#L677-L682] : /* Force a compilation error if condition is true, but also ...

6 ответов

Типовые безопасные универсальные контейнеры с макросами

Я пытаюсь сделать типобезопасный общий связанный список в C, используя макросы. Он должен работать аналогично тому, как шаблоны работают в C ++. Например, LIST(int) *list = LIST_CREATE(int);Моя первая попытка была для#define LIST(TYPE) (макрос, ...

2 ответа

Написать макросы для вызовов GCD?

Я хотел бы создать макрос для вызовов GCD, например: dispatch_async(dispatch_get_main_queue(), ^{ stuff.... });макрос может выглядеть примерно так: main (^ {...})? Не уверен, как это написать. Любое предложение? благодарю вас

3 ответа

Использование запятых внутри макроса без круглых скобок: как смешать и сопоставить шаблон?

Рассмотрим простой макрос: #define ECHO(x) x ECHO(foo(1, 2))Это дает точный результат, который мы ожидаем: foo(1, 2)Приведенный выше пример работает, потому что скобки рядом с вызовом функции распознаются препроцессором. Теперь рассмотрим, что ...