The meaning of the inscriptions, Ty, Alloc, Allocator in error?

Trying to remove the class object from vectors, and is displayed in a tip. It has such a record. What does it mean?
there are no instances of overloaded function "std::vector<_Ty, _Alloc>::erase [with _Ty=A *, _Alloc=std::allocator]"
Explain that because of _Ty_Alloc, c_Ty, _Alloc, allocator.
April 19th 20 at 12:34
2 answers
April 19th 20 at 12:36
April 19th 20 at 12:38
You tried to run the function vector<A*>::erase with unusual parameters. In the error does not say that all overload.
That is, the function takes one or two iterators.

For example, if you want to delete the value, but not where, you can't simply erase. And it is necessary...
// Compress without the allocation of memory to new end
std::vector<A*>::iterator newEnd = std::remove(V. begin(), V. end(), whatToDelete);
// Remove the empty tail in a crowd!
v.erase(newEnd, V. end());

If you want to remove by index...
v.erase(v.begin() + indexToDelete);
Can you please detail about this:
// Compress without the allocation of memory to new end
std::vector::iterator newEnd = std::remove(V. begin(), V. end()... - Tanner_West32 commented on April 19th 20 at 12:41
@Mercedes_Gottlieb, This is a standard algorithm that works like this: if array was ( 1 2 3 4 1 2 3 4 ) and we remove 2, it converts the array into a ( 1 3 4 1 3 4 ? ? ) and returns an iterator to the first hole. Thus, we can physically remove the holes range [ newEnd, V. end() ). - cleo commented on April 19th 20 at 12:44

Find more questions by tags C++