Pergunta

Eu construí vários módulos comuns que até então mantive em um diretório e referência dos diretórios do projeto que precisam deles.

Eu queria saber se havia uma maneira melhor de fazer isso?

Os módulos comuns e o código que os usam são escritos em C ++.

Foi útil?

Solução

Eu sugeriria criar uma biblioteca estática e vincular a ela. É muito mais simples que uma DLL, você não precisa se preocupar com a versão e, em geral, trabalha com eles exatamente como faria com seus módulos comuns.

EDIT: Basicamente, uma biblioteca estática é uma coleção de arquivos de objeto. Se você estiver trabalhando com o Visual Studio, pode criar um projeto de biblioteca estática (ou alterar o tipo de saída do seu projeto) que criará um arquivo .lib que você pode vincular no seu aplicativo. Se você estiver usando o GCC, poderá usar "AR" para criar o arquivo da biblioteca a partir de vários arquivos .o e vinculá -lo novamente ao seu aplicativo.

Outras dicas

Gerenciar e melhorar seu conjunto privado de ferramentas é uma coisa importante para um programador. Pessoalmente, eu sempre vou para a abordagem "o mais rápido possível possível".

Quanto mais rápido eles estiverem ligados e incluídos no meu trabalho, mais cedo me sinto "em casa". Às vezes, estou jogando todas as linhas de atendentes fora e as coloco na biblioteca padrão e inclui caminhos, e Whoopie, lá estão eles, a seu serviço. (Realmente não recomendaria isso, é claro, mas é rápido)

Não sei por que você usa DLLs, já que uma LIB normal faria com que menos dores de cabeça incluam.

Dica: faça um projeto separado deles. Tenha -os em um local lógico central. (Talvez o MyWorkspace/mylibs) Como seu conjunto de ferramentas provavelmente crescerá/muda/melhorará em todos os projetos em que você está trabalhando, às vezes configuro meu ambiente de trabalho para poder alternar rapidamente, adicionar algo e depois voltar ao projeto original. Nesse caso, é útil incluí -lo como uma dependência do projeto no seu IDE, que pode ser construída automaticamente e depois linkada. Isso é trivial com quase todos os IDEs.

Um problema diferente, no entanto, são empregadores. Eles geralmente são cautelosos em relação às coisas que você carrega para seus projetos. Especialmente se você quiser fechar a fonte para eles. Mas esta é uma história para outra pergunta;)

Eu gosto de colocá -los em uma DLL para que o tamanho do meu executável se torne menor.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top