Klausimai pažymėti „dinamiškos atminties paskirstymas“

Dinaminis atminties priskyrimas, paprastai kalbų, kuriose nėra šiukšlių surinkimo ar privalomo ar automatinio atskaitos skaičiavimo, kontekste, reiškia procesą arba prašo atminties bloko su kintamu dydžiu operacinę sistemą.
25
atsakymai

Kas ir kur yra kamino ir krūvos?

Knygos programavimo kalbomis paaiškina, kad verte sukuriamos vertės rūšys, o krūvoje sukuriami atskaitos tipai, nepaaiškinant šių dviejų dalykų. Aš neskaito aiškaus paaiškinimo. Aš suprantu, kas yra kamino. Bet kur ir ką jie yra (fiziškai ...
nustatytas 17 sep. '08, 7:18
9
atsakymai

Skirtumas tarp statinio atminties paskirstymo ir dinaminio atminties paskirstymo

Norėčiau sužinoti, koks yra skirtumas tarp statinio atminties paskirstymo ir dinaminio atminties paskirstymo? Ar galėtumėte tai paaiškinti bet kuriuo pavyzdžiu?
rinkinys 05 Dec '11 15:30 val
4
atsakymai

Ar nauji ir ištrinami dar naudingi C ++ 14?

Atsižvelgiant į tai, kad egzistuoja make_unique ir make_shared, taip pat automatinis unikalus_ptr ir shared_ptr ištrynimas iš destruktorių, kokios yra situacijos (be palaikymo pasenusio kodo) naujiems ir ištrintiems C ++ 14?
birželio 10 d. 15 val
11
atsakymai

Efektyvus susietas sąrašas C + +?

Šiame dokumente teigiama, kad std :: list nėra efektyvus: std :: list yra labai neefektyvi klasė, kuri retai naudinga. Jis atlieka kasetės paskirstymą kiekvienam į jį įdėtam elementui, todėl jis turi labai aukštą pastovų koeficientą ...
Nustatykite rugpjūčio 16 d '17, 18:44
5
atsakymai

Ar sunaikintojas vadinamas, kai objektas išeina iš ribų?

Pavyzdžiui: int main () {Foo * leedle = naujas Foo (); grąža 0; } klasė Foo {private: somePointer * bar; viešai: Foo (); ~ Foo (); }; Foo :: ~ Foo () {delete bar; } Ar destruktorius bus netiesiogiai vadinamas kompilatoriumi ar ...
yra nustatytas liepos 17 d. 13 val
4
atsakymai

Kodėl mano programinė įranga nukrenta, kai padidina rodyklę ir ją ištrina?

Kai supratau, kad turėjau didelį nesusipratimą dėl nuorodų, išsprendžiau kai kurias programavimo pratybas. Prašome, kad kas nors galėtų paaiškinti priežastį, kodėl šis kodas yra „C ++“. #include <iostream> int main () {...
gruodžio 16 d '16, 15:08
5
atsakymai

Kada ir kodėl naudoti malloc?

Na, aš negaliu suprasti, kada ir kodėl turėčiau skirti atminties su „malloc“. Čia yra mano kodas: #include <stdlib.h> int main (int argc, const char * argv []) {typedef struct {char * name; char * lytis; amžius; } studentas; // Dabar aš ...
nustatytas sausio 10 d '12, 11:40
2
atsakymai

naujas operatorius atminties paskirstymui krūvoje

Stebėjau naujo operatoriaus parašą. Tai yra: negaliojantis * operatorius naujas (std :: size_t dydis) metimas (std :: bad_alloc); Bet kai mes naudojame šį teiginį, mes niekada nenaudojame. tai yra, int * arr = new int; Taigi, kaip C ++ paverčia žymiklį ...
nustatyti 09 vas '11 9:02
6
atsakymai

Pimpl idiom be dinaminio atminties paskirstymo

norime naudoti pimpl idiom kai kurioms mūsų projekto dalims. Šios projekto dalys taip pat yra dalys, kuriose dinamiškas atminties paskirstymas yra draudžiamas, ir šis sprendimas nėra mūsų kontroliuojamas. Taigi paklausiu, ar yra švarus ir ...
nustatyti 07 vas '11, 16:38
4
atsakymai

Kodėl vykdymo aplinka negali taikyti ištrinti ar ištrinti [] vietoj programuotojo?

Aš perskaičiau, kad reikia ištrinti [] operatorių, nes vykdymo trukmė nesaugo informacijos apie tai, ar pasirinktas blokas yra objektų, kuriems reikalingi destruktorių skambučiai, masyvas, bet iš tikrųjų saugo informaciją apie tai, kur yra atmintis.
nustatyti 06 gruodis '11 21:46
3
atsakymai

Kodėl naudoti _mm_malloc? (skirtingai nuo _aligned_malloc, alligned_alloc arba posix_memalign)

Yra keletas variantų, kaip gauti įmontuotą atminties bloką, tačiau jie yra labai panašūs, o problema iš esmės kyla dėl to, kokia kalba yra standartas ir platforma, į kurią nukreipiate. C11 negaliojantis * suderintas_alloc (dydis_t lyginimas, dydis_t dydis) PO ...
rugsėjo 16 d '15, 18:30
4
atsakymai

Kaip dinamiškai paskirstyti atmintį naudojant „Linux“ sistemas ir sisteminius skambučius

Aš ieškau gerų kodų pavyzdžių, kaip dinaminę atmintį paskirstyti naudojant surinkimo kalbą pagal „Linux“ ir naudojant sisteminius skambučius, o ne „malloc“ ir draugus. Kokie yra paprasčiausi, bet veiksmingi būdai tai padaryti? Kompiuteryje ...
gegužės 06 d. 10 val
5
atsakymai

Naujo operatoriaus maišymas [] ir naujo su įprastu ištrynimu []

Tiesiog iš smalsumo, ar tai teisėta? X * p = statinis_pasaulis <X *> (operatorius naujas [] (3 * dydis (X))); naujas (p + 0) X (); naujas (p + 1) x (); naujas (p + 2) x (); ištrinti [] p; // Ar galiu čia naudoti ištrinti []? Ar tai yra neapibrėžtas elgesys? Panašiai: ...
birželio 27 d. 11 val
4
atsakymai

Dinaminis atminties paskirstymas rodyklėms

Bandau parašyti programą, kuri skaito eilutės eilutę iš teksto failo ir saugo juos eilutėse, dinamiškai paskirstydama atmintį kiekvienam elementui. Mano planas buvo saugoti kiekvieną eilutę masyvu dekreto pagalba.
Nustatykite rugsėjo 28 d '13, 18:40
3
atsakymai

Suprasti naujo prižiūrėtojo elgesį

Perskaičiau „Scott Meyers“ „Efektyvų C ++ 55“ ir užduoti klausimą iš 49 punkto: Kai naujas operatorius negali užbaigti atminties prašymo, jis vadina naują tvarkytoją, kol jis suras pakankamai atminties. Gerai suprojektuota naujojo valdiklio funkcija turėtų atlikti vieną ...
nustatyti 16 vas '15 15:33