Hello Guros,
I am new with C++ (and therefore with this Forum), so Hi ALL!!

I am writing a program that holds pointers (lets assume for int) in a std::vector.
I need to delete a specific given pointer (lets call it _toDelete) sitting in the vector, i use the for_each loop and a functor (called DeleteF) that holds the pointer _toDelete.

My question is:
The DeleteF functor will receive an iterator to the vector elements.
Will these elements be pure iterators, and i must reference the inside pointer with *currIter
or the given "iterator" is the pointer it self?

I ask it because untill now i worked with vector holding integral types and its iterators were pointers to the holded data.....now i work with a user define type pointer and it is risky.....

to make things clearer, i put my functor operator() implementation, UnReg is the Functor(:

void UnReg:perator()(vector< CallBackBase * >::iterator _currIter)
{
//!!!!!!pay attention to the below * operator for the iterator!!!!
if(*_currIter != m_toDelete)
{
return;
}

m_vector.erase(_currIter);
}

or maybe i am wrong and i derefernce my pointer and this is bad.......?

Thank you all!!!
hoshmy.