Questions étiquetées 'allocation de mémoire dynamique'

L'allocation dynamique de mémoire, généralement dans le contexte de >
25
réponses
9
réponses

La différence entre l'allocation de mémoire statique et l'allocation de mémoire dynamique

Je voudrais savoir quelle est la différence entre l'allocation de mémoire statique et l'allocation de mémoire dynamique? Pourriez-vous expliquer cela avec un exemple?
set 05 déc '11 à 15h30
4
réponses

Nouveau et supprimer sont-ils toujours utiles en C ++ 14?

Compte tenu de la présence de make_unique et de make_shared, ainsi que de la suppression automatique de unique_ptr et shared_ptr par les destructeurs, quelles sont les situations (en plus du code obsolète) pour utiliser new et delete en C ++ 14?
fixé le 10 juin '15 à 20h12
11
réponses

Liste chaînée efficace en C ++?

Ce document dit que std :: list n'est pas efficace: std :: list est une classe très inefficace et rarement utile. Il effectue une allocation de tas pour chaque élément inséré, donc il a un coefficient extrêmement élevé constant ...
16 août '17 à 18h44
5
réponses

Le destructeur est-il appelé lorsqu'un objet sort de la portée?

Par exemple: int main () {Foo * leedle = new Foo (); retourne 0; } class Foo {private: somePointer * bar; public: Foo (); ~ Foo (); }; Foo :: ~ Foo () {delete bar; } Si le destructeur sera appelé implicitement par le compilateur ou sera ...
est fixée au 17 juillet '13 à 17h45
4
réponses

Pourquoi mon programme se bloque-t-il lorsque j'incrémente un pointeur et le supprime?

J'ai résolu quelques exercices de programmation quand j'ai réalisé que j'avais un gros malentendu concernant les pointeurs. S'il vous plaît, quelqu'un peut expliquer la raison pour laquelle ce code se bloque en C ++. #include <iostream> int main () {...
fixé le 16 décembre '16 à 15h08
5
réponses

Quand et pourquoi utiliser malloc?

Eh bien, je ne sais pas quand et pourquoi allouer de la mémoire avec malloc. Voici mon code: #include <stdlib.h> int main (int argc, const char * argv []) {typedef struct {char * name; char * sex; int age; } étudiant; // Maintenant je c ...
fixé le 10 janvier '12 à 11h40
2
réponses

nouvel opérateur pour l'allocation de mémoire dans le tas

J'ai regardé la signature du nouvel opérateur. C’est-à-dire: opérateur * vide new (std :: size_t size) throw (std :: bad_alloc); Mais lorsque nous utilisons cette déclaration, nous n’utilisons jamais de distribution. c'est-à-dire int * arr = new int; Alors, comment C ++ transforme le pointeur ...
mis le 09 février '11 à 9:02
6
réponses
4
réponses

Pourquoi l'environnement d'exécution ne peut-il pas appliquer delete ou delete [] à la place du programmeur?

J'ai lu que l'opérateur delete [] est nécessaire, car le moteur d'exécution ne stocke pas d'informations permettant de savoir si un bloc sélectionné est un tableau d'objets nécessitant ou non des appels de destructeurs, mais stocke en réalité des informations sur l'emplacement de la mémoire ...
set 06 déc '11 à 21:46
3
réponses

Pourquoi utiliser _mm_malloc? (contrairement à _aligned_malloc, alligned_alloc ou posix_memalign)

Il existe plusieurs options pour obtenir un bloc de mémoire intégré, mais elles sont très similaires et le problème réside essentiellement dans la >
mis le 16 septembre '15 à 18h30
4
réponses

Comment allouer dynamiquement de la mémoire à l'aide de générations et d'appels système sous Linux

Je cherche de bons exemples de code pour allouer de la mémoire dynamique en utilisant le >
fixé le 06 mai '10 à 17h54
4
réponses

Allocation dynamique de mémoire pour les tableaux de pointeurs

J'essaie d'écrire un programme qui lit une séquence de lignes à partir d'un fichier texte et les stocke dans un tableau de chaînes, en allouant dynamiquement de la mémoire pour chaque élément. Mon plan était de stocker chaque ligne dans un tableau à l'aide d'un décret ...
Mis le 28 septembre 13 à 18h40
3
réponses

Comprendre le comportement du nouveau gestionnaire

Je lis "Effective C ++ 55" de Scott Meyers et pose la question de l'article 49: Lorsqu'un opérateur nouveau ne peut pas terminer une demande de mémoire, il appelle un nouveau gestionnaire jusqu'à ce qu'il trouve suffisamment de mémoire. Une fonction newhandler bien conçue devrait en exécuter une ...
mis le 16 février '15 à 15h33