У меня есть struct, который я хочу заполнить в отдельном исходном файле, откуда я запускаю main. В заголовочном файле я включил extern, но когда я иду, чтобы определить переменную в исходном файле, она не работает.Внешние переменные C++
//This is a header file
struct example {
int data1;
float data2;
bool example;
}
extern example tmp;
И затем в исходном файле:
example *tmp = new example;
Я получаю ошибку "Expected unqualified-id
". Почему это?
Вы действительно огляделись вокруг? http://stackoverflow.com/questions/1433204/how-do-i-use-extern-to-share-variables-between-source-files-in-c здесь отвечает на это хорошо. Кроме того, я не понял: почему вы используете разные типы данных? (Ptr и var) – Lasoloz
Я действительно осмотрелся и уже видел это. Однако это не помогает в этом конкретном случае. Я использую ptr, потому что, когда я этого не делаю, я получаю сообщение об ошибке: «нет жизнеспособного преобразования из примера» в пример ». Я упомянул об этом и в комментариях к ответу. –