#include <iostream>
#include <set>
#include <string>


using namespace std;

struct WordData
{
string Word;
int Count;
};

bool operator<( WordData const& a, WordData const& b )
{
<something missing in here>
};

typedef set<WordData> WordSet;

int main()
{
WordSet MySet;
while (true)
{
WordData D;
cin >> D.Word;
if (D.Word == "eof") break;
...
};

for (WordSet::iterator it = MySet.begin(); it != MySet.end(); ++it)
{
cout << it->Word << " " << it.Count << endl;
};

return 0;
};

What code am i missing in the <something missing in here>