logo
Литература_1 / photon_old

Глобальный хеадер-файл

PhAB позволяет Вам определить один глобальный хеадер-файл для каждого приложения. PhAB генерирует этот файл только однажды, в первый раз, когда Вы генерируете код приложения.

 Как только Вы определили хеадер, PhAB автоматически включает его во все генерируемые заготовки С и С++ файлов. Таким образом, лучше всего определить хеадер, когда Вы впервые создаёте приложение. См. раздел "Установка стартовой информации приложения" в главе "Работа с приложениями". Вы можете модифицировать хеадер-файл в любой нужный Вам момент.

Вот удобный способ использования этого одиночного хеадер-файла для одновременного определения всех Ваших глобальных переменных и внешних ссылок на эти переменные:

/* Хеадер "globals.h" для приложения my_appl */

#include <Pt.h>

#ifdef DEFINE_GLOBALS

#define GLOBAL

#define INIT(x) = x

#else

#define GLOBAL extern

#define INIT(x)

#endif

/* глобальные переменные */

GLOBAL int variable1 INIT(1);

Если DEFINE_GLOBALS определена, то последняя строка вышеприведенного примера выглядит так:

int variable1 = 1;

Если DEFINE_GLOBALS не определена, то последняя строка приведенного выше примера имеет такой вид:

extern int variable1;

Не забудьте определить все глобальные переменные Вашего приложения с префиксом GLOBAL, как показано выше. Также убедитесь, что в один (и только в один) из Ваших файлов с исходным кодом включена следующая строка:

#define DEFINE_GLOBALS

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

 В файле Makefile сборка файлов с исходным кодом зависит от хеадер-файла. Так что если Вы внесли какие-либо изменения в хеадер-файл, при сборке Вашего приложения будут перекомпилированы все файлы с исходным кодом.

Yandex.RTB R-A-252273-3
Yandex.RTB R-A-252273-4