Mantenere i nomi all'interno di namespace renderà il compilatore meno stressante!?
Ad esempio:
// test.cpp
#include</*iostream,vector,string,map*/>
class vec { /* ... */ };
Prendi 2 scenari di main() :
// scenario-1
using namespace std; // comment this line for scenario-2
int main ()
{
vec obj;
}
Per lo scenario 1 in cui using namespace std; , diversi nomi di tipi da namespace std entreranno in ambito globale. Quindi il compilatore dovrà controllare contro vec se qualcuno di questi si scontrerà con esso. Se lo fa, genera un errore.
Nello scenario 2 in cui non è presente using namespace , il compilatore deve semplicemente controllare vec con std , perché questo è l'unico simbolo nell'ambito globale.
Mi interessa saperlo, non dovrebbe rendere il compilatore un po 'più veloce?