وقتی :: موقع فراخوانی تابع پیش از اسم اون تابع بیاد به این معنیه که این تابع توسط کامپایلر در فضای نام سراسری در نظر گرفته میشه.
مثال زیر رو ببینین:
#include <iostream>
using namespace std;
//global function
void foo()
{
    cout << "This function will be called by bar()";
}
namespace lorem
{
    void foo()
    {
        cout << "This function will not be called by bar()";
    }
    void bar()
    {
        ::foo();
    }
}
int main()
{
    lorem::bar(); //will print "This function will be called by bar()"
    return 0;
}