c++ | espacio de nombres espacio de nombres


1. Conflictos de nombres

inserte la descripción de la imagen aquí
inserte la descripción de la imagen aquí
Debido a que incluimos el archivo de encabezado <stdlib.h>, que contiene la función rand, el compilador no sabe si desea imprimir la variable global rand o la función rand.
inserte la descripción de la imagen aquí
Definimos un espacio de nombres A, y la compilación pasó en este momento, y aquí se muestra la dirección de la función rand.

Dos, espacio de nombres espacio de nombres

1. Los espacios de nombres pueden almacenar variables, estructuras, clases y funciones

namespace B
{
    
    
	int a = 10;
	void test()
	{
    
    
		cout << "hello world" << endl;
	}

	struct S {
    
    };
	class C {
    
    };
}

2. El espacio de nombres debe declararse en el ámbito global.

inserte la descripción de la imagen aquí

Definimos un espacio de nombres C en el ámbito local y notificamos un error.

3. Los espacios de nombres pueden anidar espacios de nombres

namespace D
{
    
    
	int a = 10;
	namespace E
	{
    
    
		int a = 10;
	}
}

4. Los espacios de nombres con el mismo nombre se fusionarán

inserte la descripción de la imagen aquí

4. Los espacios de nombres pueden ser anónimos

inserte la descripción de la imagen aquí

4. El espacio de nombres puede tener un alias

inserte la descripción de la imagen aquí


Supongo que te gusta

Origin blog.csdn.net/2301_77412625/article/details/130134093
Recomendado
Clasificación