You are here

Scope resolution operator in C++

Scope resolution operator(::) in C++ programming language is used to define a function outside a class or when we want to use a global variable but also has a local variable with the same name.

C++ programming code

#include <iostream>
 
using namespace std;
 
char c = 'a';     // global variable
 
int main() {
  char c = 'b';   //local variable
 
  cout << "Local  variable: " << c << "\n";      
  cout << "Global variable: " << ::c << "\n";  //using scope resolution operator
 
  return 0;
}

Output of scope resolution operator program:
Scope resolution operator in C++ variable program output.

Scope resolution operator in class

#include <iostream>
using namespace std;
 
class programming {
public:
  void output();  //function declaration
};
 
// function definition outside the class 
 
void programming::output() {
  cout << "Function defined outside the class.\n";
}
 
int main() {
  programming x;
  x.output();
 
  return 0;
}

Output of program:
Scope resolution operator in C++ class program output.