ExpertiDict

C++ · Essencial · Português · Técnico

operador de escopo

opeɾaˈdoɾ dʒi isˈkopusubstantivo

O operador :: indica a qual namespace ou classe um nome pertence, como std::string ou Conta::total. Sozinho, no início, ::x refere-se ao escopo global.

Onde usar

Aparece ao usar a biblioteca padrão, definir funções membro fora da classe e acessar membros estáticos. Também desambigua nomes globais que ficaram escondidos por variáveis locais.

Em código

int x = 1;
namespace n { int x = 2; }
void f() {
  int x = 3;
  std::cout << x << n::x << ::x;  // 321
}

Exemplos

Use o operador de escopo para chamar a versão global da função.

Defina o método fora da classe com Conta::depositar.

Cuidado

Não confunda com o ponto e a seta, que acessam membros de um objeto; o operador de escopo acessa nomes de um escopo.

Sinônimos

dois-pontos duplos

Veja também

Todos os termos de C++