Just as a remark, I would not use an iterator with a vector, but just use the index. For example:
std::vector<double> vec;
...
double d = vec[i];
</double>
If you insist in using an iterator, then think of it as being kind of a pointer (syntax wise), and hence you would dereference it as:
std::vector<mystruct> vec;
...
MyStruct* p = it;
... or if age is a member of MyStruct
int age = it->age;
</mystruct>