• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

question-closed [C++ / std::list] Lista obiektów - odwołanie

Aruba Cloud VPS - 50% taniej przez 3 miesiące!
0 głosów
3,431 wizyt
pytanie zadane 19 lipca 2016 w C i C++ przez JAKUBW Nałogowiec (33,470 p.)
zamknięte 21 lipca 2016 przez JAKUBW

Witam, mam listę obiektów (wskaźników) i chciałbym na każdym z nich wywołać metodę.

Niestety nie potrafię tego zrobić. Oto kod:

#include <iostream>
#include <list>

using namespace std;

class Klasa
{
public:
    void foo()
    {
        cout<<"MHM"<<endl;
    }
};
int main()
{
    list <Klasa*> lista;
    for(int i = 0;i<10;i++)
    {
        Klasa *temp = new Klasa;
        lista.push_back(temp);
    }
   for(list<Klasa*>::iterator i = lista.begin();i != lista.end();i++)
        *i //! ->foo(); tutaj jest ten problem, bo nie wiem jak to połączyć
    ;return 0;
}

Lecz żeby nie było, że sam nie kombinuję to wymyśliłem takie rozwiązanie:

Klasa* t;
    for(list<Klasa*>::iterator i = lista.begin();i != lista.end();i++)
        t = *i;
    t->foo();

Ale myślę, że można by to zrobić prościej więc proszę o pomoc.

komentarz zamknięcia: Otrzymałem odpowiedź

1 odpowiedź

+2 głosów
odpowiedź 19 lipca 2016 przez obl Maniak (51,300 p.)
wybrane 21 lipca 2016 przez JAKUBW
 
Najlepsza
(*i)->foo();

 

komentarz 19 lipca 2016 przez MetRiko Nałogowiec (37,110 p.)

Dodam, że przy funkcji push_back nie trzeba tworzyć nowej zmiennej:

//Klasa *temp = new Klasa;
//lista.push_back(temp);
lista.push_back(new Klasa);

 

Podobne pytania

0 głosów
1 odpowiedź 638 wizyt
pytanie zadane 31 sierpnia 2016 w Java przez Jonki Dyskutant (8,180 p.)
0 głosów
0 odpowiedzi 116 wizyt
pytanie zadane 25 października 2023 w C i C++ przez natalia2002. Początkujący (400 p.)
0 głosów
1 odpowiedź 145 wizyt

93,195 zapytań

142,211 odpowiedzi

322,058 komentarzy

62,519 pasjonatów

Advent of Code 2024

Top 15 użytkowników

  1. 3316p. - dia-Chann
  2. 3251p. - Łukasz Piwowar
  3. 3243p. - Łukasz Eckert
  4. 3222p. - CC PL
  5. 3167p. - Tomasz Bielak
  6. 3157p. - Łukasz Siedlecki
  7. 3133p. - rucin93
  8. 3110p. - Maurycy W
  9. 3028p. - Adrian Wieprzkowicz
  10. 2992p. - Mikbac
  11. 2490p. - Marcin Putra
  12. 2467p. - Michał Telesz
  13. 2427p. - Michal Drewniak
  14. 2372p. - Anonim 3619784
  15. 1949p. - rafalszastok
Szczegóły i pełne wyniki

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj

Wprowadzenie do ITsec, tom 1 Wprowadzenie do ITsec, tom 2

Można już zamawiać dwa tomy książek o ITsec pt. "Wprowadzenie do bezpieczeństwa IT" - mamy dla Was kod: pasja (użyjcie go w koszyku), dzięki któremu uzyskamy aż 15% zniżki! Dziękujemy ekipie Sekuraka za fajny rabat dla naszej Społeczności!

...