sto usando Visual Studio 2012.Includere libreria statica all'interno di una direttiva del preprocessore
ho usato molte volte le direttive del preprocessore come
#ifdef something
#include<some_header.h>
#else
#include<other_header.h>
#endif
Mi chiedevo se è possibile collegare una libreria statica in un simile modo:
#ifdef something
// use some_library.lib
#else
// use other_library.lib
#endif
la questione, è venuto dal soggetto del mio previous question: ho due librerie statiche lib1.lib, lib2.lib (non il loro codice), senza spazi dei nomi, con la stessa funzione-prototipi, ma con diverse implementazioni.
Quello che stai chiedendo è follia. Due librerie non significano nulla se non hanno le stesse firme di metodo, e se hanno le stesse firme di metodo, questa dovrebbe probabilmente essere un'impostazione di runtime che viene capovolta (come la registrazione o altre informazioni di debug) –
@ RichardJ.RossIII è una situazione perfettamente valida. Ad esempio, collegamento alla libreria di debug e alla libreria di rilascio. Di solito non viene eseguito da #pragmas ma tramite la configurazione del progetto. – SomeWittyUsername