I came up with the following snipped but it looks quite hacky.
int *pointer = &(*(collection.end()--));
back() returns a reference to the last element, so
&collection.back() is what you need.
emplace_back returns a reference to the new element. You could use it instead of
vector<int> collection; int *pointer = &collection.emplace_back(42);