Очень нравится твой вопрос. Также я могу сказать, используйте этот синтаксис:
::foo(42);
Но я могу сказать, что, на мой взгляд, это более элегантное и хорошее программирование, задайте пространства имен, так что вы можете написать что-то вроде этого:
namespace MyNameSpace
{
void foo(int){}
class X
{
void foo(){}
void bar()
{
MyNameSpace::foo(42);
}
};
};
Это хорошо, потому что Namespaces
позволяет группировать классы, объекты и функции по имени.
PS: Тогда это поможет вам понять смысл записи ::foo(42);
, когда у вас нет пространства имен.