Pitanja označena kao "dodjela dinamičke memorije"

Dinamička dodjela memorije, obično u kontekstu jezika bez sakupljanja smeća ili obveznog ili automatskog brojanja referenci, odnosi se na proces ili zahtjeva operativni sustav za blok memorije promjenjive veličine.
25
odgovor

Što i gdje su stog i hrpa?

Knjige u programskim jezicima objašnjavaju da su tipovi vrijednosti stvoreni na stogu, a referentni tipovi su stvoreni na hrpi, bez objašnjavanja što su te dvije stvari. Nisam pročitao jasno objašnjenje za to. Razumijem što je stog. Ali, gdje i što su (fizički ...
postavljen na 17 sep. '08 u 7:18
9
odgovor

Razlika između statičke memorije i dinamičke dodjele memorije

Htjela bih znati što je razlika između statičke memorije i dinamičke dodjele memorije? Možete li to objasniti nekim primjerom?
set 05 Dec '11 u 15:30
4
odgovor

Jesu li novi i izbrisani još uvijek korisni u C ++ 14?

S obzirom na prisutnost make_unique i make_shared, kao i automatsko brisanje jedinstvenih_ptr i shared_ptr od strane destruktora, koje su situacije (osim podržavanja zastarjelog koda) za korištenje novih i brisanje u C ++ 14?
postavljeno 10. lipnja u 15 sati
11
odgovor

Učinkoviti povezani popis u C + +?

Ovaj dokument kaže da std :: list nije učinkovit: std :: list je vrlo neučinkovita klasa koja je rijetko korisna. On obavlja dodjelu hrpe za svaki element umetnut u njega, stoga ima iznimno visok konstantni koeficijent ...
Postavite 16. kolovoza '17 u 18:44
5
odgovor

Poziva li se destruktor kada objekt izađe iz dosega?

Na primjer: int main () {Foo * leedle = novi Foo (); return 0; } klasa Foo {private: somePointer * bar; public: Foo (); ~ Foo (); }; Foo :: ~ Foo () {brisanje trake; } Hoće li destruktor implicitno biti pozvan od strane prevodioca ili će ...
postavljen je 17. srpnja u 17:45 sati
4
odgovor

Zašto se moj program ruši kada povećavam pokazivač i brišem ga?

Riješio sam neke vježbe programiranja kada sam shvatio da imam veliki nesporazum u vezi s pokazivačima. Molim vas, netko može objasniti razlog zbog kojeg se ovaj kod ruši u C ++. #include <iostream> int main () {...
16. prosinca 16 u 15:08
5
odgovor

Kada i zašto koristiti malloc?

Pa, ne mogu shvatiti kada i zašto dodijeliti memoriju malocu. Ovdje je moj kod: #include <stdlib.h> int main (int argc, const char * argv []) {typedef struct {char * ime; * spol; int age; } student; // Sada ...
postavljen 10. siječnja '12 u 11:40
2
odgovor

novi operator za dodjelu memorije u hrpi

Promatrao sam potpis novog operatera. To je: void * operator new (std :: size_t size) bacanje (std :: bad_alloc); Ali kad koristimo ovu izjavu, nikada ne koristimo cast. to jest, int * arr = new int; Dakle, kako C ++ pretvara pokazivač ...
set 09 veljača '11 u 9:02
6
odgovor

Pimpl idiom bez korištenja dinamičke dodjele memorije

želimo koristiti pimpl idiom za neke dijelove našeg projekta. Ti dijelovi projekta također su dijelovi gdje je dodjela dinamičke memorije zabranjena i ovo rješenje nije pod našom kontrolom. Zato vas pitam postoji li čista i ...
set 07 veljača '11 u 16:38
4
odgovor

Zašto se runtime okruženje ne može primijeniti brisanje ili brisanje [] umjesto programera?

Pročitao sam da je operater delete [] potreban, jer vrijeme izvođenja ne pohranjuje informacije o tome je li odabrani blok niz objekata koji zahtijevaju destructor ili ne, ali zapravo pohranjuje informacije o tome gdje je u memoriji ...
postavljeno 06.12 '11 u 21:46
3
odgovor

Zašto koristiti _mm_malloc? (za razliku od _aligned_malloc, alligned_alloc ili posix_memalign)

Postoji nekoliko opcija za dobivanje ugrađenog bloka memorije, ali one su vrlo slične, a problem se u biti svodi na jezik koji standard i platformu koju ciljate. C11 nevažeći * Podijeljeni_valovi (poravnanje veličine_t, veličina_vrijednosti) PO ...
postavljen 16. rujna '15 u 18:30
4
odgovor

Kako dinamički alocirati memoriju koristeći gradnje i sistemske pozive pod Linuxom

Ja sam obličje za dobar kod primjera za dodjelu dinamičke memorije koristeći asemblerski jezik pod Linuxom i korištenje sistemskih poziva, a ne malloc i prijateljima. Koji su neki od najjednostavnijih, ali učinkovitih načina za to? Na računalu ...
postavljen 6. svibnja u 17:54
5
odgovor

Miješanje operatora new [] i postavljanje novog s uobičajenim brisanjem []

Samo iz znatiželje, je li to legalno? X * p = static_cast <X *> (operator new [] (3 * sizeof (X))); novo (p + 0) X (); novo (p + 1) x (); novo (p + 2) x (); delete [] p; // Mogu li ovdje koristiti delete []? Ili je to nedefinirano ponašanje? Slično tome: ...
postavljen 27. lipnja 2009. u 19:02
4
odgovor

Dinamička dodjela memorije za polja pokazivača

Pokušavam napisati program koji čita u nizu redaka iz tekstualne datoteke i pohranjuje ih u niz nizova, dinamički alocirajući memoriju za svaku stavku. Moj plan je bio pohranjivanje svake linije u nizu uz pomoć dekreta ...
Postavite 28. rujna '13 u 18:40
3
odgovor

Razumjeti ponašanje novog rukovatelja

Pročitao sam Scottov efekt C ++ 55 i postavio pitanje iz klauzule 49: Kada novi operator ne može ispuniti zahtjev za memorijom, on poziva novog rukovatelja dok ne pronađe dovoljno memorije. Dobro osmišljena newhandler funkcija trebala bi obaviti jednu ...
postavljen 16. veljače '15 u 15:33