2011-02-07 4 views
7

Я хочу создать глобальный объект в программе cpp, как это сделать? Правильно ли это? в "global_obj.h"C++ глобальный объект

#include "class.h" 
Class obj; 

в "main.cpp"

extern Class obj; 
+2

Ваш один ответ является абсолютно правильным. Декларация 'extern' принадлежит к файлу заголовка. Определение, отличное от '' extern', принадлежит только одному файлу '.cpp'. – Omnifarious

ответ

11

Мы заявляем глобалам в extern в файле заголовка, в вашем случае: global_obj.h и фактическая глобальная переменная в исходном файле: global_obj.cpp. В отдельных исходных файлах у нас есть #include "global_obj.h".

Он должен выглядеть следующим образом:

global_obj.cpp

Class obj; 

global_obj.h

extern Class obj; 

main.cpp

#include "global_obj.h" 
Смежные вопросы