1. Namespace
Em C ++, variáveis, funções e classes existirão no escopo global. Quando os programadores usam várias bibliotecas C ++, podem ocorrer conflitos. O objetivo do uso de namespaces é localizar os nomes dos identificadores. Para evitar conflitos de nomenclatura ou poluição de nomes de domínio.
2. A definição de namespace
formato:
namespace 命名空间的名字
{
命名空间的成员
}
A seguir, vou compartilhar com você várias formas de namespaces (Observação: vários namespaces com o mesmo nome são permitidos no mesmo projeto, e o compilador irá sintetizar o mesmo namespace no final):
(1) Namespace comum
namespace N1
{
int a;
int Add(int left ,int right)
{
return left + right;
}
}
(2) O aninhamento de namespaces
refere-se à definição de um namespace em um namespace
namespace N2
{
int a;
int b;
int Add(int left , int right)
{
return left + right;
}
namespace N3
{
int c;
int d;
int Sub(int left , int right)
{
return left - right;
}
}
}
3. Três maneiras de usar o namespace
Depois de saber como definir um namespace, a próxima questão é, naturalmente, como usá-lo. Aqui estão três maneiras de usar namespaces para amigos:
(1) Nome do namespace e qualificador de escopo
int main()
{
printf("%d\n",N::a);//输出命名空间N中的a
return 0;
}
(2) Use usando para introduzir membros no namespace
using N::b;
int main()
{
printf("%d\n",N::a);
printf("%d\n",b);
return 0;
}
(3) Use o uso do nome do namespace do namespace para apresentar
using namespace N;
int main()
{
printf("%d\n",N::a);
printf("%d\n",b);
Add(10,20);
return 0;
}
Observe os três métodos acima: os primeiros dois métodos introduzem um membro específico no namespace e o terceiro método introduz todos os membros e funções no namespace, que podem ser chamados diretamente quando usados.