Я читаю об алгоритмах в следующем местоположении.Использование алгоритма сравнения в STL
http://www.brpreiss.com/books/opus4/html/page116.html
Здесь упоминаются как ниже
template <class T>
int Wrapper<T>::CompareTo (Object const& obj) const
{
Wrapper<T> const& arg =
dynamic_cast<Wrapper<T> const&> (obj);
return ::Compare (datum, arg.datum);
}
Функция CompareTo
элемента реализована таким же образом, как функции члена Хэша. I.e., он вызывает глобальную (нечленную) функцию ::Compare
для фактического сравнения.
Мой вопрос; что означает автор в функции глобального сравнения в C++? Нужно ли включать какой-либо заголовочный файл здесь, поскольку код не компилируется?
Единственный STL 'compare', который я знаю, из' '[string :: compare] (http://www.cplusplus.com/reference/string/string/compare/) –
CoryKramer
Это должен быть какой-то шаблон глобальной функции, созданный авторами. В любом случае, эта книга выглядит довольно ужасно. Вывод всего из 'Object' ?! –
Мой совет: не беспокойтесь об этом. Есть лучшие способы тратить свое время, чем на то, чтобы прочитать ум автора книги, который является настолько устаревшим. Даже если предположить, что это было лучшее, на что вы могли бы надеяться в то время, книга на C++ с авторским правом 1997 года гарантированно будет очень устаревшей. –