奇怪的代码!这个结构体如何用的

奇怪的代码!!!!!!这个结构体怎么用的?
struct even 





  string value; 


  even(const string& val) : value(val){} 


  bool operator()(const Persion& p) const 





  return p.naem == value; 





};




各位大哥。谁能详细说说。

------解决方案--------------------
struct和class是很类似的,只不过都是public属性的。
------解决方案--------------------
lz打错的地方太多了,赵老师又要发那段文字了

这是一个伪函数,以string初始化,可以像这样用
even iseven("zhang san");//初始化
iseven(person);//判断person的名字是否和"zhang san"一样,一样返回true,不一样返回false

lz可以搜一下伪函数/函数对象/functor等了解一下