Stiamo programmando una libreria di registrazione che si mantiene in un file .hpp. Vorremmo includere <tr1/unordered_map>
(se il compilatore supporta TR1,) o lo standard <map>
in caso contrario. Esiste un modo standard per verificare in fase di compilazione se tr1 è disponibile o no?Come verificare la presenza di TR1 durante la compilazione?
Stavo pensando che allo stesso modo in cui è presente il simbolo di definizione "__cplusplus
", potrebbe essere stato definito un "__cxx__tr1
" o qualcosa del genere. Non l'ho visto nelle bozze di TR1, quindi presumo che non sia presente, ma volevo chiedere prima per ogni evenienza.
Come nota, se tali definizioni non esistono, non sarebbe una cattiva idea includerle nelle proposte stesse.
OK, questa era un'opzione che volevo evitare, dato che voglio solo rilasciare un file .hpp ed eseguire. Per queste cose "quasi standard", preferirei un semplice confronto piuttosto che dover eseguire una configurazione completa. –
Sto accettando questa risposta perché sembra che non ci sia modo, e questo sembra essere il modo migliore ... –