Что означает «переменная данных» в MSVS2010 в этой ошибке? Я думал, что объявляю символ, который определен в другом месте моего кода.
ошибка C2365: 'g_surf': переопределение; предыдущее определение было "переменная данных"
Очевидно, это может означать int или char.
Я последовал рабочему примеру.
Мне пришлось включить определение класса перед объявлением символа.
#include classdef.h
Я использовал ключевое слово extern для объявления объекта в stdafx.h.
extern COriginal g_orig;//works
extern CClass g_surf;//how is this declaration resulting in a 'data variable' type?
Я создаю экземпляр класса в файле кода (в глобальном пространстве). Вот где возникает ошибка.
COriginal g_orig(CONST_ARGUMENT);//works
CClass g_surf();//seen as redefinition.
Я создал класс из двух других классов, потому что мне нужны атрибуты из обоих.
Я могу найти другие вопросы переопределения, которые не дают понимания этого. Я не нашел ни в MSVS2010, ни в Интернете, что подразумевается под «переменной данных».