Последний вариант стандарта c++ вводит так называемые "объекты точек настройки" ([customization.point.object]), которые широко используются библиотекой диапазонов.
Кажется, я понимаю, что они предоставляют способ написания собственной версии begin, swap, data и т.п., Которую стандартная библиотека находит в ADL. Это верно?
Как это отличается от предыдущей практики, когда пользователь определяет перегрузки, например, begin ее типа в своем собственном пространстве имен? В частности, почему они являются объектами?