Elektroda.pl
Elektroda.pl
X
Proszę, dodaj wyjątek www.elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

[C++] Zwracanie tablicy z funkcji i deklarowanie dynamicznie rozmiaru

marcinmkk84 18 Lip 2011 15:55 2021 2
  • #1 18 Lip 2011 15:55
    marcinmkk84
    Poziom 9  

    Witam mam dwie funkcje nr 1 i 2. W funkcji nr 1 przetwarzam dane i chce z niej wywoływać funkcje nr 2 która pobiera dane z bazy danych. Następnie pobrane dane chce zwrócić do funkcji nr 1. Do tej pory za każdym razem gdy potrzebowałem dostęp do bazy wywoływałem funkcje nr 2 a dane były zapisywane do zmiennej globalnej. Jednak jest inny problem... Jakiej wielkości tablice zadeklarować... Obecnie jest 200 jednak dane zaczęły się coraz szybciej rozrastać i powoli to 200 to zbyt mało. Mogę dać 1000 czy 10 000. jednak za rok czy dwa taki rozmiar też może okazać się zbyt mały... Co z tym fantem zrobić jak dynamicznie zadeklarować tablice tak by było wiadomo ze jej rozmiar zawsze wystarczył na dane z bazy.

    0 2
  • #2 18 Lip 2011 16:11
    M_D_M
    Poziom 12  

    Użyj listy dynamicznej lub gotowego std::vector.
    Podaj najlepiej kod bo nie bardzo rozumiem Twój opis problemu dt. funkcji, sądzę, że można go rozwiązać w inny sposób.

    0
  • #3 22 Lip 2011 19:44
    Matejkos
    Poziom 20  

    Słuszna uwag co do użycia kontenera aczkolwiek w tym przypadku dużo lepsze było by użycie listy http://pl.wikibooks.org/wiki/C++/Listy która ma tą przewagę nad vector-em że nie wymaga ciągłości pamięci więc w momencie kiedy nie wiemy jak długie będą nasze dane jest o wiele lepsza. W przypadku vector-a każde dodanie które przekroczy długość zarezerwowaną dla vector-a powoduje kopiowanie całości w nowe miejsce w pamięci co nie dzieje się w przypadku stosowania listy.
    Pozdrawiam Matejkos

    0