我编写了一个使用 C++ stl 的程序set
。有一个struct event
用来构造集合的,它对应的binary predicate
..struct comp
来定义它们在集合中的顺序。
代码部分如下所示:
struct event
{
int s;
int f;
int w;
set<event,comp>::iterator nxt;
};
struct comp
{
bool operator()(event a, event b)
{
if(a.f!=b.f)
return a.f<b.f;
else
{
if(a.s!=b.s)
return a.s<b.s;
else
return a.w>b.w;
}
}
};
set< event , comp > S;
我在这里面临的问题是先写哪个结构?我已经尝试前向声明这两个结构。在这两种情况下我都有编译器错误。