Iterator do wektora ze wskaźnikami.
Ostatnio zmodyfikowano 2011-12-01 16:16
blojayble Temat założony przez niniejszego użytkownika |
Iterator do wektora ze wskaźnikami. » 2011-11-30 22:33:33 Witam. Mam pewnie prosty i banalny problem, ale kombinuję i nie wiem jak to załatwić. std::vector < cField *> tab;
std::vector < cField *>::iterator it; for( it = tab.begin(); it != tab.end(); ++it ) { it->~cField(); }
Mamy tutaj wektor z wskaźnikami na jakąś tam klasę. Ogólnie sielanka, dopóki nie przyszło mi korzystać z iteratorów Problem tkwi w "it->~cField();". invalid return type 'cField **' for overloaded 'operator ->'Próbowałem wciskać gwiazdki robić różne wskaźniki, ale mi nie wychodziło. Zdaję się na Wasze doświadczenie. Z góry dziękuję i pozdrawiam. |
|
malan |
» 2011-11-30 22:36:05 Jakoś tak to było:? /edit by malan: To nie o to chodziło. |
|
blojayble Temat założony przez niniejszego użytkownika |
» 2011-11-30 22:48:09 Kombinowałem z tym, ale nie zadziałało, być może źle Cię zrozumiałem. A jak np. miałbym tego użyć przy takim kodzie? td::vector < cField *>::iterator it; for( it = tab.begin(); it != tab.end(); ++it ) { it->DrawField(); } |
|
malan |
» 2011-11-30 22:58:57 |
|
pekfos |
» 2011-12-01 08:04:33 it->~cField(); Chcesz ręcznie wywołać destruktor?! To błąd (chyba, że masz tam gdzieś placement new - wtedy to nie błąd) |
|
blojayble Temat założony przez niniejszego użytkownika |
» 2011-12-01 16:16:53 Dziękuję, działa. |
|
« 1 » |