У меня есть решение VC ++ с двумя проектами.Проект B ссылается на проект A. Проект B также имеет в качестве папки «Включить» (Свойства / Свойства конфигурации / C ++ / Дополнительные каталоги включения) папку из проекта А. Пространства имен не используются.
Когда я импортирую заголовок из проектаКласс вроде #include "someFolder\SomeClass.h"
, тогда я могу объявить указатель на класс.
SomeClass *sc;
Но как только я вызову конструктор, он не скомпилируется.IntelliSense не показывает никаких ошибок.
SomeClass *sc = new SomeClass("someString");
Я получаю:
ошибка LNK2001: "неразрешенный внешний символ" public_ thiscall SomeClass :: SomeClass (... "и"ошибка LNK1120: 1 неразрешенная внешность ".
Конструктор является общедоступным, как и методы SomeClass. Самое смешное, что я могу компилировать при вызове методов из SomeClass в Project B. Только cunstructor не делаетпохоже на работу.