Я читаю исходный код стандартной библиотеки шаблонов SGI. Я считаю, что функция operator new
всегда имеет перед собой двойную двоеточие. Вот так:
T* tmp = (T*)(::operator new((size_t)(size * sizeof(T))));
operator new
можно напрямую вызвать без добавления поля ::
, то почему stl-кодеры пишут таким образом? Какая ловушка или ситуация могут возникнуть, если мы не используем ::
перед ними.