Scope resolution operator

From Wikipedia, the free encyclopedia

The scope resolution operator (::) in C++ is used to define the already declared member functions (in the header file with the .hpp extension) of the class. In the .cpp file one can define the normal functions or the member functions of the class. To differentiate from the normal functions with the member functions of the class, one needs to use the scope resolution operator (::) in between the class name and the member function name i.e. ship::foo() where the ship is the class and the foo() is the member function in the ship. The other uses of the resolution operator is to resolve the scope of the variables if the same variable name is used for the global, local, and the data member of the class. If the resolution operator is placed between the class name and the data member belonging to the class then the data name belonging to the particular class is affected. If the resolution operator is placed in front of the variable name then the global variable is affected. If no resolution operator is placed then the local variable is affected.