Использование переменной extern в заголовке и использование в нескольких проектах
У меня есть 4 проекта в одном решении. Я хочу использовать переменные, определенные как extern в одном файле заголовка глобально. Сценарий таков:
headerfile.h и function.cpp в проекте 1 mainfile.cpp в проекте 2
headerfile.h содержит:
extern int nframes;
mainfile.cpp содержит:
#include "headerfile.h"
int nframes=0;
function.cpp содержит:
//use value of nframes
и я пытаюсь получить прямой доступ к значению nframes в function.cpp. Но в проекте 1 есть ошибка компоновщика: неразрешенный внешний символ "int nframes".
Теперь, когда я также определяю nframes в function.cpp, сборки успешны, но значение nframes сбрасывается в 0, когда элемент управления переключается с mainfile.cpp на function.cpp.
Пожалуйста, помогите.
1 ответ
Вам нужно включить mainfile.cpp в каждый из ваших проектов. Ошибка ссылки просто говорит о том, что она не может найти, где переменная определена. Предложите изменить имя файла mainfile.cpp на GlobalVariables.CPP, с которым вам все станет понятнее.