Поделиться через


директива using (C++)

using директива позволяет имен в выражении пространство имен без использования имя пространства имен как явный квалификатор.Конечно, полное, полное имя все равно может использоваться для повышения удобочитаемости.

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

Заметки

Обратите внимание на разницу между использование директива и использование объявление . using объявление допускает отдельное имя, которое будет использоваться без квалификации, using директива позволяет все имена в пространстве имен, которое будет использоваться без квалификации.

Если локальная переменная имеет то же имя, что и переменная пространства имен, то переменная пространства имен скрыта.Ошибка иметь переменную пространства имен с таким же именем, как глобальная переменная.

ПримечаниеПримечание

Поместите ваше using директиву в начало файла исходного кода для уменьшения потенциала для непредвиденной расширения функциональности с IntelliSense.

пространство имен std

Стандарт ANSI/ISO C++ требует явного объявления пространства имен в стандартной библиотеке.Например, при использовании iostream необходимо указать пространство имен cout одним из следующих способов:

  • std::cout (explicitly)

  • using std::cout (using объявление)

  • using namespace std (using директива)

/clr

В следующем образце показано, как разрешить имена в библиотеке базового класса платформы .NET Framework пространство имен без использования имя пространства имен как явный квалификатор.

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

Пример

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

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

См. также

Ссылки

Пространства имен (C++)

Ключевые слова C++