Ho alcune intestazioni che combattono con C++ 11 ma mi piacerebbe utilizzare funzionalità come gli elenchi di inizializzatori nel mio codice. La mia ricerca dice che è possibile attivare nuove funzionalità a l'unica riga di comando, come:Esiste un prgma GCC per attivare e disattivare C++ 11?
g++ -std=c++11
Quello che mi piace molto è quello di mettere nel mio codice:
#pragma CXX11_OFF
#include <old.hpp>
#pragma CXX11_ON
vector<int> v {1,2,3};
non sono stato in grado di trovare un tale pragma Esiste?
Ha senso attivare e disattivare C++ 11 all'interno dello stesso file? Potrebbe essere difficile da interpretare. – Brian
In che modo "combatte" con C++ 11? – Eric
È vagamente possibile che il compilatore possa supportare una cosa del genere, ma sarebbe estremamente difficile. L'istruzione ex ++ C++ fa qualcosa di simile, ma non riesco a immaginare agli scrittori di compilatori di fare così tanto sforzo per ogni versione dello standard C++. –