Witam
Czy jest możliwość usunięcia pojedynczego elementu vektora po przez
delete
?
Witam
Czy jest możliwość usunięcia pojedynczego elementu vektora po przez
delete
?
Do usuwania elementów vectora
użyj funkcji erase
:
http://www.cplusplus.com/reference/vector/vector/erase/
Nie o to chodzi miałem dzisiaj test przed rozmową kwalifikacyjną i był on wielokrotnego wyboru i podobno w ten sposób też można, więc jestem ciekawy po prostu
Można, ale nie jestem pewien czy jest to poprawne.
jest, jeżeli alokowałeś elementy dynamicznie (tylko przez new), ale o poprawności takiego stosowania nie będę się wypowiadał
#include <iostream>
#include <vector>
int main()
{
std::vector<int*> v { new int(1), new int(2) };
for(auto const& e : v) {
std::cout << *e;
}
for(auto const& e : v) {
delete e;
}
return 0;
}
Można zwolnić pamięć trzymaną przez element wektora.