Como faço referência a um projeto VC ++ a partir de outro no mesmo projeto?
-
05-07-2019 - |
Pergunta
Eu sou novo para Visual Studio. Preciso de sua ajuda com o seguinte.
Visual Studio 2005,
VC ++
1 solução tem 2 projectos.
Vamos chamar a solução como
'solução'
Projeto 1 é nomeado 'p1' e projeto 2 é chamado de 'P2'
Preciso funções de exportação e classes de 'p1' para que eu possa usá-los através da importação em 'P2'?
E se eu simplesmente incluir os arquivos de cabeçalho e, em seguida, usar as funções, chamando-os de imediato?
Obrigado, viren
Solução
Se bem me lembro (não usei C ++ por um tempo), havia dois tipos diferentes de bibliotecas C ++ -. Uma biblioteca estática (um arquivo .lib) e uma biblioteca dinâmica (um arquivo .dll)
No caso de uma biblioteca estática que você teve que p2 configure para que ele liga para p1.lib (nas propriedades do projeto); adicionar p1 a dependências de p2, de modo que é sempre construído em primeiro lugar; e depois incluir os arquivos .h de p1, se necessário.
O arquivo .dll foi um pouco mais complicado - os arquivos .h tinha que ter __declspec(dllimport)
e __declspec(dllexport)
eu acho. E havia mais um pouco de magia. Não tenho certeza realmente. Mas estas são as palavras-chave que pode você se levantar e correr.
Note que esta é uma palavra-chave MS específico e não funcionará em outros compiladores.
Outras dicas
Tudo que você precisa fazer para utilizar estas funções é mudar as dependências projetos.
Botão direito do mouse em p2 (ou p1), selecione "Dependências do projeto" Select p1 (ou p2) e incluir o que você deseja usar. É simples assim.