it
is a pointer to the memory location where the value actually resides. If you only want to do a replace operation, you can always do *it=newValue
which basically translates to "replaces whatever is at the memory location pointed by it
with newValue
".