Dodawanie komórek do tablicy

0

Jest możliwość dodawania komórek do utworzonej dynamicznej tablicy? Chciałbym, żeby po naciśnięciu przycisku tworzyło mi następne dwie komórki.

0

http://4programmers.net/Forum/633668?h=#id633668
Chyba chodzi Ci miej wiecej o to... ale nie jestem pewien bo nie za bardzo zrozumiałem twoje pytanie

0

Jest taka możliwość ale musisz zadbać o zarezerwowanie miejsca, a potem o zwolnienie go. Do tego celu najlepiej jest opakować sobie taką tablice w klasę i wewnątrz zaimplementować wszystko co potrzebujesz. Tylko pytanie czy warto to robić skoro "ktoś" już taką klasę napisał i znajduje się ona w bibliotece standardowej? Poszukaj informacji o vector'ach ze standardowej biblioteki c++.

0

Szkoda, ze nie napisales jaki jezyk, ale w C rozszerzanie dynamicznej tablicy wyglada tak:

#include <stdlib.h>

int main(void)
{
  int *tablica;

  tablica = (int*)malloc(20*sizeof(int));         // alokacja pamieci na 20 elementow typu int, czyli 80 bajtow na x86
  if(tablica == NULL) return -1;

  realloc(tablica, 30*sizeof(int));                 // dodajemy 10 elementow do tablicy

  free(tablica);                                           // zwalniamy pamiec

  return 0;
}
0

Dziękuję za odpowiedź! Chodzi mi o język C++. Ten ostatni post wygląda na wystarczający - sprawdze jak wróce do domu. Bardzo się zmieni to co napisałeś w C++?

0

Jak dodasz w C++ naglowek

cstdlib

to niby moze zostac, ale w C++ zwyklo sie uzywac operatora new i delete, a do zmiany rozmiaru hmm chyba realloc jednak, ale nie jestem pewny.

0

Zreszta jak chcesz w C++ to uzyj sobie vector'a i po sprawie.

#include <vector>

using namespace std;

int main()
{
    vector <int> tablica;          // pusta tablica

    tablica.push_back(200);      // dodajesz jeden element

    return 0;
}

Na wikipedi jest fajna tabelka z metodami klasy wektor ;)

0

Dzięki za ten vector! O to mi właśnie chodziło. Możesz jeszcze powiedzieć mi jak potem skasować cały ten vector?

0

jego nie musisz/nie możesz skasować.
jego ZAWARTOŚĆ 'sama' się skasuje, bo ten tutaj vector jest utworzony jako lokalny i ktos mądry kiedys w zamierzchlych czasach wypozazyl go w destruktor.

...może kup jakąś książkę o C++ i/lub zacznij ja czytać?

tom: nie wiki, tylko google:cppreference, albo goole:cplusplus.. po co przepisywac i zawalac wiki, skoro juz sa dobrze opisy? tez chodzace na idei wiki?

0

Jeżeli chodzi o książkę to czytam Symfonie - nie wiem czy znacie. Dobry wybór? Jeżeli nie to co polecicie?

1

Zobacz, na gorze strony, pod paskowana belka z logiem 4programmers, po prawej stronie od tematu watku jest przycisk SZUKAJ. Nacisnij go, wpisz "symfonia" "książka polecić" w odpowiednie miejsce, i wiesz co z tym fantem robic dalej :)

moje subiektywne podsumowanie ostatnich kilku dyskusji o ksiazkach, w wielkim skrocie: książka daje Ci podstawy podstaw. reszty uczysz się sam pisząc i popełniając pierdyliardy błędów, za które bedziesz zyliard razy objechany, ale dzieki temu lepiej i szybciej zlapiesz podstawy. przy rzeczach zaawansowanych juz nikt Cie nie bedzie objezdzal, przeważnie :)

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.