Partilhar via


Diretiva using (C++)

A política using permite que os nomes em um namespace sejam usados sem o namespace-name como qualificador explícito. Obviamente, o nome qualificado completo pode ainda ser usado para melhorar a legibilidade.

using namespace [::] [ nested-name-specifier ] namespace-name

Comentários

Observe a diferença entre a política using e a declaração using: a declaração using permite que um nome individual seja usado sem qualificação, a política using permite que todos os nomes em um namespace sejam usados sem qualificação. Essa palavra-chave é usada também para aliases de tipo.

Se uma variável local tiver o mesmo nome de uma variável de namespace, a variável de namespace será oculta. É um erro ter uma variável de namespace com o mesmo nome de uma variável global.

Dica

Coloque sua política using no início do arquivo de código-fonte para reduzir a possibilidade de comportamento inesperado com o IntelliSense.

O namespace std

O padrão ANSI/ISO C++ exige que você declare explicitamente o namespace na biblioteca padrão. Por exemplo, ao usar iostream, você deve especificar o namespace de cout de uma das seguintes maneiras:

  • std::cout (explicitly)

  • using std::cout (declaração using)

  • using namespace std (política using)

/clr

O exemplo a seguir mostra como permitir que nomes um namespace da biblioteca de classes base do .NET Framework sejam usados sem namespace-name como um qualificador explícito.

// using_directive.cpp
// compile with: /c /clr
using namespace System::Reflection;
[assembly:AssemblyDescriptionAttribute("test")];

Exemplo

// using_directive2.cpp
// compile with: /EHsc
#include <iostream>

int main() {
   std::cout << "Hello ";
   using namespace std;
   cout << "World." << endl;
}
  

Consulte também

Referência

Namespaces (C++)

Palavras-chave C++