【发布时间】:2010-07-20 02:15:55
【问题描述】:
我不确定以下类对类示例的作用。在下面的代码中,operator() 在这种情况下做了什么?我不太了解 *(begin + first) 和几乎整个返回表达式作为正在评估的内容。任何帮助都会很棒。谢谢!
// IndexCompare.h - interface for IndexCompare class template
#ifndef _INDEXCOMPARE_H_
#define _INDEXCOMPARE_H_
#pragma once
template <class random_iterator>
class IndexCompare {
public:
IndexCompare(random_iterator begin, random_iterator end)
: begin(begin), end(end) {}
~IndexCompare() {}
bool operator() (unsigned int first, unsigned int second) {
return (*(begin + first) < *(begin + second));
}
private:
random_iterator begin;
random_iterator end;
};
#endif
【问题讨论】:
标签: c++ templates operator-overloading