был несколько подробный поток (228684) о том, как глобально (используя extern struct) объявляет структуру, которая может быть замечена в более чем одном файле C++, но я не могу точно определить, как это сделать это (было много разговоров об этом, сделайте это, возможно, сделайте это, попробуйте это и т. д.).определение структур глобально в C++
купил кого-то, пожалуйста, напишите очень простой пример того, как объявить структуру, которая может быть видна в двух отдельных файлах C++? Если я поместил все свои функции в тот же файл, что и основной, он работает нормально, но когда я пытаюсь разделить функции в разных файлах, я не могу его скомпилировать.
Вещи, которые я не понимаю ... Должен ли я напечатать структуру? Я определяю структуру в файле заголовка и включаю этот заголовок в каждый исходный файл C++? Нужен ли мне макрос #ifndef в файле заголовка? Я объявляю структуру extern в заголовке?
Спасибо
#ifndef, #define и #endif предназначены для защиты вас от довольно распространенного случая, когда вы случайно включаете один и тот же файл дважды (обычно через какой-то третий файл) – 2008-11-25 19:32:46
Я закодировал немного C, чтобы ознакомиться с указатели и т. д., поэтому я могу с уверенностью сказать, что мое незнание на C++ является абсолютным. Однако, что всегда меня беспокоило: было бы так сложно компилятору проверить, был ли файл уже включен, и в этом случае не включать его снова? – 2008-11-25 23:55:47