Как мне ссылаться на один проект VС++ из другого в том же проекте?
-
05-07-2019 - |
Вопрос
Я новичок в Visual Studio.Нужна ваша помощь в следующем.
Визуальная Студия 2005, ВК++.
1 решение имеет 2 проекта.
Давайте назовем решение «решением»
Проект 1 называется «p1», а проект 2 — «p2».
Нужно ли мне экспортировать функции и классы из «p1», чтобы я мог использовать их, импортировав в «p2»?
Что, если я просто включу файлы заголовков, а затем сразу же буду использовать функции, вызвав их?
Спасибо, Вирен
Решение
Если я правильно помню (какое-то время не использовал C++), существовало два разных типа библиотек C++ — статическая библиотека (файл .lib) и динамическая библиотека (файл .dll).
В случае статической библиотеки вам пришлось настроить p2 так, чтобы она ссылалась на p1.lib (в свойствах проекта);добавить p1 к зависимостям p2, чтобы он всегда собирался первым;а затем при необходимости включите файлы .h из p1.
С файлом .dll было немного сложнее: файлы .h должны были иметь __declspec(dllimport)
и __declspec(dllexport)
Я думаю.И было еще немного волшебства.Не уверен, правда.Но это ключевые слова, которые могут помочь вам начать работу.
Обратите внимание, что это ключевое слово, специфичное для MS, и оно не будет работать на других компиляторах.
Другие советы
Все, что вам нужно сделать, чтобы использовать эти функции, — это изменить зависимости проектов.
Щелкните правой кнопкой мыши на p2(или p1), выберите "Зависимости проекта" Выберите p1(или p2) и включить то, что вы хотите использовать.Это так просто.