Создание глобальной структуры

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

Ну то есть, вот есть у меня к примеру пять .cpp файлов, условно в первом я объявляю структуру, в остальных четырех делаю extern и прописываю полностью внутренности структуры. Если вдруг внутренности структуры меняются, добавляется или удаляется какое то поле к примеру, то во всех остальных четырех файлах, нужно проделывать туже операцию, что, как бы не очень удобно.

#include <iostream>  
#include <string>  


struct my_struct
{
    int my_int;
    std::string my_string;
};

my_struct mystrct;

void my_func()
{
    mystrct.my_int = 555;
}

h

#include <iostream>           
#include <string> 


extern struct my_struct
{
    int my_int;
    std::string my_string;
};

extern my_struct mystrct;

int main()
{
    my_func();

    std::cout << mystrct.my_int;

}

Вот можно ли, как то избежать прописывание тела структуры в остальных файлах кроме первоначального, где объявлялась структура ?


Ответы (0 шт):