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.
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
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++.
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;
}
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++?
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.
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 ;)
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?
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?
Jeżeli chodzi o książkę to czytam Symfonie - nie wiem czy znacie. Dobry wybór? Jeżeli nie to co polecicie?
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 :)