In C++, hai i file di intestazione (.h), i file (.lib) e (.dll).Quando utilizzare le dipendenze aggiuntive di Visual Studio?
In Visual Studio, è necessario fornire il percorso per la ricerca di questi file in tre luoghi diversi:
Proprietà di configurazione => C/C++ => Generale => Directory di inclusione aggiuntive. Qui elenchiamo le directory "include" che si desidera cercare e rendere disponibili.
Proprietà di configurazione => Linker => Generale => Directory di libreria aggiuntive. Qui si elencano le directory "lib" che si desidera cercare e rendere disponibili.
Proprietà di configurazione => Linker => Input => Dipendenze aggiuntive. Qui si specifica esplicitamente i file .lib che si desidera includere.
Le domande sono:
Q1: Se si è specificato il file di intestazione a # 1 e il lib a # 2, perché/quando si vuole specificare nulla in # 3?
Q2: Vedo persone che includono una specifica versione di debug o release di una lib in # 3. Puoi specificare il debug o la versione di rilascio di una lib in # 3 e continuare a costruire in modalità di rilascio o di debug? Idealmente, quale versione del debug/release della libreria dovrebbe essere fornita qui?
Grazie! Un esempio di contatore, che ancora mi confonde ... Sto usando una delle librerie Boost, tokenizer. Quindi per # 1, specifico il percorso della directory \ include, e poi nel mio file .cpp, faccio solo: #include "boost/tokenizer.hpp", e facendo ciò il mio programma funziona correttamente. - Q3: come mai non ho dovuto includere la posizione della libreria \ lib (ad esempio # 2 è stato lasciato in bianco) e allo stesso modo per # 3 (ad esempio se non ho specificato la libreria esatta come mai sono stato in grado collegare con quella libreria). Grazie! – user205834
@ user205834: ci sono un paio di possibilità. Innanzitutto, molte Boost sono librerie di sola intestazione, vale a dire che tutto il codice si trova nell'intestazione e che non è necessario collegarsi a nulla per utilizzarlo. In secondo luogo, per le parti che usano le librerie, normalmente usano '#pragma comment (lib," libname ")' per collegarsi alla libreria automaticamente. –