>>133
あ、出来ました!!!!!!!
assert が出て、

typename Vec<Element>::pointer Vec<Element>::erase(pointer from, pointer to)
{
assert(from<to);
const std::ptrdiff_t offset = from - begin();
resize(std::copy(to, end(), from) - begin());
return begin() + offset;
}
この部分のassert(from<to);にです。from==toになってるみたいです。
assert(from<=to);にしてみたら、assertは出なくなったのですが、
Message: [bad allocation]
The type reported may not be most-derived.
ってのが、出てきます。

本当、出来そこないで、すいません。