Compartilhar via


Namespaces Plataforma, padrão e cli (Extensões de Componentes C++)

Um namespace qualifica implicitamente os nomes de elementos de linguagem para que os nomes não entrem em conflito com símbolos definidos pelo usuário no código-fonte existente.

Todos os tempos de execução

O Visual C++ fornece namespaces separados para conjuntos de tipos de dados semelhantes em C++/CX e no C++/CLI.Um namespace impede colisões de nome entre símbolos idênticos.Por exemplo, uma colisão de nome pode impedir que o compilador reconheça Palavras-chave Contextuais (Extensões de Componentes C++).

Tempo de Execução do Windows

Para obter mais informações, consulte Namespaces e visibilidade de tipo (C++/CX).

d87eee3k.collapse_all(pt-br,VS.110).gifRequisitos

Opção do compilador: /ZW

Common Language Runtime

Sintaxe

using namespace cli;

Comentários

C++/CLI dá suporte ao namespace cli.Para compilar com /clr, a instrução using na seção Syntax é implícita.

Os seguintes recursos de linguagem estão no namespace cli:

d87eee3k.collapse_all(pt-br,VS.110).gifRequisitos

Opção do compilador: /clr

d87eee3k.collapse_all(pt-br,VS.110).gifExemplos

Exemplo

O exemplo de código a seguir demonstra que é possível usar um símbolo no namespace cli como um símbolo definido pelo usuário em seu código.No entanto, assim que tiver feito isso, você terá de qualificar explícita ou implicitamente suas referências para o elemento de linguagem cli de mesmo nome.

// cli_namespace.cpp
// compile with: /clr
using namespace cli;
int main() {
   array<int> ^ MyArray = gcnew array<int>(100);
   int array = 0;

   array<int> ^ MyArray2 = gcnew array<int>(100);   // C2062

   // OK
   cli::array<int> ^ MyArray2 = gcnew cli::array<int>(100);
   ::array<int> ^ MyArray3 = gcnew ::array<int>(100);
}

Consulte também

Conceitos

Extensões de componente para plataformas de tempo de execução