Какой смысл того, чтобы говорить “#define НЕЧТО НЕЧТО” в C?

Моя проблема была: «Я хочу IDE, где я могу выполнить Behave»

Pycharm выполняет свою работу.

Я сделал скрипт для удобного выполнения тестов:

cd / D% ~ dp0

ведут себя

15
задан Brian Tompsett - 汤莱恩 4 February 2016 в 12:00
поделиться

2 ответа

С #define инструкция, Вы тогда будете в состоянии протестировать, если определение типа было сделано где-то в другом месте в использовании кода:

#ifdef FOO_INT32
FOO_INT32 myfoo;
#else
int myfoo;
#endif
29
ответ дан 1 December 2019 в 01:39
поделиться

Это - практика, это иногда делается в заголовках. #define позволяет, чтобы время компиляции тестировало существования определения типа. Это позволяет код как:

#ifdef FOO_INT32
FOO_INT32 myfoo;
#else
int myfoo;
#endif

или как истинная защита #define, подобный защите заголовочного файла.

#ifndef FOO_INT32
typedef int FOO_INT32
#define FOO_INT32 FOO_INT32
#endif

Это - не обязательно хорошая практика, но это имеет свое использование, особенно когда у Вас есть некоторые заголовки, которые используют типы, определенные другими библиотеками, но Вы хотите обеспечить свои собственные замены для случаев, когда Вы не пользуетесь теми библиотеками вообще.

2
ответ дан 1 December 2019 в 01:39
поделиться
Другие вопросы по тегам:

Похожие вопросы: