Reklama
Pokazuje wyniki od 1 do 6 z 6

Temat: [C++] Lista obiektów

  1. #1
    Avatar Jaziq
    Data rejestracji
    2007
    Położenie
    Wrocław
    Wiek
    33
    Posty
    1,233
    Siła reputacji
    18

    Domyślny [C++] Lista obiektów

    Mam klasę:

    Kod:
    class krawedz{
    	int zrodlo, ujscie, waga;
    public:
    	krawedz(int i, int j, int k)
    	{
    		zrodlo = i;
    		ujscie = j;
    		waga = k;
    	}
    	int get_zrodlo()
    	{
    		return zrodlo;
    	}
    	int get_ujscie()
    	{
    		return ujscie;
    	}
    	int get_waga()
    	{
    		return waga;
    	}
    };
    i listę:

    Kod:
    list <krawedz> lista;
    I teraz pytanie: jak mam się odwoływać do poszczególnych jej elementów? Nigdy nie pracowałem na listach a teraz muszę, dlatego, pewnie takie głupie, pytanie.

    Np: chcę do 1-wszego elementu listy wpisać 3,8,100 (zrodlo, ujscie, waga).
    Czy będzie to komenda
    Kod:
    lista.push_back(krawedz(3,8,100));
    Czy coś pomieszałem?


    I teraz drugi problem, dajmy na to że mam 100 obiektów w tej liście, jak się do nich odwoływać?
    ~

  2. #2
    Avatar zakius
    Data rejestracji
    2008
    Położenie
    The Internets
    Wiek
    33
    Posty
    11,075
    Siła reputacji
    24

    Domyślny

    headerlisty[indeks] ma prawo działać, czasem tak robiłem iirc, ale to było na własnej implementacji listy, nie wiem jak działa wbudowana
    Problem z komputerem? Instrukcja diagnostyczna
    Cytuj Vegeta napisał Pokaż post
    Cytat został ukryty, ponieważ ignorujesz tego użytkownika. Pokaż cytat.
    Baby maja wymagania jak windows vista, takze nigdy nie wiesz.
    Cytuj Dzzej napisał Pokaż post
    Cytat został ukryty, ponieważ ignorujesz tego użytkownika. Pokaż cytat.
    Moje posty to esencja głupoty.
    "Don't worry, I'm just a pervert"

  3. Reklama
  4. #3
    Avatar Gray
    Data rejestracji
    2007
    Położenie
    Gdańsk
    Posty
    2,847
    Siła reputacji
    18

    Domyślny

    Łatwo się nie da, lista nie służy do wyciągania sobie elementów ze środka. Jak chcesz mieć bezpośredni dostęp do elementów, lepiej użyj czegoś innego, np. vectora albo deque. A jeśli już koniecznie ma być ta lista, to musisz sobie ustawić iterator na początek/koniec i przejść tyle elementów żeby się dostać tam gdzie chcesz.

    Bezpośredni dostęp masz tylko do pierwszego i ostatniego elementu (lista.front(), lista.back()).

  5. #4
    Avatar Jaziq
    Data rejestracji
    2007
    Położenie
    Wrocław
    Wiek
    33
    Posty
    1,233
    Siła reputacji
    18

    Domyślny

    Ok już ogarnąłem. Niestety musi być lista bo chcę 5 dostać :D Dzięki

    Kod:
    list<krawedz>::iterator p = lista.begin();
    	while (p != lista.end()) {
    		cout << p->get_zrodlo() << " ";
    		cout << p->get_waga() << " ";
    		cout << p->get_ujscie() << " ";
                    p++;
    		cout << "\n";
    	}
    Ostatnio zmieniony przez Jaziq : 08-01-2014, 15:43
    ~

  6. #5
    Avatar Kusterek
    Data rejestracji
    2013
    Położenie
    Warszawa
    Wiek
    31
    Posty
    1,710
    Siła reputacji
    13

    Domyślny

    serio nie da się dostac poprzez indeks?
    Ja zawsze do tego tworzyłem własną klasę, i przemieszczałem się wskaźnikiem po niej. Troche to wynalezienie koła na nowo ale raz sobie zaimplementowałem a potem korzystałem długo

  7. #6

    Data rejestracji
    2010
    Posty
    2,657
    Siła reputacji
    16

    Domyślny

    Cytuj Kusterek napisał Pokaż post
    Cytat został ukryty, ponieważ ignorujesz tego użytkownika. Pokaż cytat.
    serio nie da się dostac poprzez indeks?
    Ja zawsze do tego tworzyłem własną klasę, i przemieszczałem się wskaźnikiem po niej. Troche to wynalezienie koła na nowo ale raz sobie zaimplementowałem a potem korzystałem długo
    Po co skoro masz std::vector.. ;dd

Reklama

Informacje o temacie

Użytkownicy przeglądający temat

Aktualnie 1 użytkowników przegląda ten temat. (0 użytkowników i 1 gości)

Podobne tematy

  1. [JAVA] Tablica obiektów oraz zliczanie obiektów
    Przez hefalump w dziale Programowanie
    Odpowiedzi: 5
    Ostatni post: 24-11-2016, 13:33
  2. Tablet Modecom Freetab 9701 - problem z przesuwaniem obiektów.
    Przez Sura w dziale Urządzenia mobilne
    Odpowiedzi: 0
    Ostatni post: 02-03-2015, 19:52
  3. [JAVA] Tablica obiektow
    Przez hefalump w dziale Programowanie
    Odpowiedzi: 1
    Ostatni post: 31-10-2014, 23:24
  4. Lista botow do Tibii, dodatki (7.5-8.6)
    Przez paweł w dziale Tibia
    Odpowiedzi: 173
    Ostatni post: 17-01-2011, 23:45
  5. Lista złodziei?
    Przez Jimmy Blank w dziale Tibia
    Odpowiedzi: 21
    Ostatni post: 08-08-2009, 22:42

Zakładki

Zakładki

Zasady postowania

  • Nie możesz pisać nowych tematów
  • Nie możesz pisać postów
  • Nie możesz używać załączników
  • Nie możesz edytować swoich postów
  •