Чтобы указать, что это пространство имен верхнего уровня.
Это очень похоже (но не идентично) на то, как работает имя каталога. Без двоеточия в начале C ++ сначала проверит, существует ли пространство имен с этим именем в текущем «активном» пространстве имен. Если нет, он проверит пространство имен на верхнем уровне.
С начальным двойным двоеточием C ++ пропустит первую проверку и будет искать только пространство имен верхнего уровня.