Création de Tableau Dynamique d'Objets Dynamiques en C++
Je sais comment créer un tableau d'objets dynamiques.
Par exemple, le nom de la classe est en Stock.
Stock *stockArray[4];
for(int i = 0 ; i < 4;i++)
{
stockArray[i] = new Stock();
}
Comment avez-vous changer de ce tableau dynamique d'objets dynamiques?
Ce que j'ai essayé:
Stock stockArrayPointer = nouveau Stock stock[4];
Il ne fonctionne pas et le message d'erreur est "La valeur du Stock** ne peut être utilisé pour initalize une entité de type Stock.
Deuxième question est la suivante, après la création de tableau dynamique d'objets dynamiques, quelle est la syntaxe pour accéder à l'pointeurs dans le tableau.
Maintenant, j'utilise stockArray[i] = new Stock(); Comment ce changement?
Besoin de conseils à ce sujet...
pourquoi ne pas u utiliser des vecteurs?
Qu'entendez-vous par tableau dynamique d'objets dynamiques? Pouvez-vous développer?
un tableau qui est dans le tas et les choses, dans le tableau, sont également dans le tas...
Pourquoi ne pas simplement de Stock *stockArray = nouveau Stock[4];
Qu'entendez-vous par tableau dynamique d'objets dynamiques? Pouvez-vous développer?
un tableau qui est dans le tas et les choses, dans le tableau, sont également dans le tas...
Pourquoi ne pas simplement de Stock *stockArray = nouveau Stock[4];
OriginalL'auteur lakesh | 2013-11-30
Vous devez vous connecter pour publier un commentaire.
Si vous êtes à l'aide de c++, alors vous ne devriez pas réinventer la roue, il suffit d'utiliser vecteurs:
Edit:
Je n'ai pas compris votre question, si vous voulez juste avoir et tableau de tableaux alloués sur le tas juste utiliser:
Tout simplement parce que
a[i]
est équivalent à*(a+i)
ne signifie pas que ces deux types de données sont étroitement liées, ni qu'ils peuvent être appelés "sucre syntaxique". Veuillez observer les C FAQ sur les tableaux et les pointeurs : c-faq.com/aryptr, en particulier c-faq.com/aryptr/practdiff.htmlc'est l'exigence dans mon programme. c'est pourquoi. hope u comprendre..
Alors je ne peut que se sentir triste pour votre travail et votre professeur.
Je crois que vous avez mal interprété votre affectation. Un tableau alloué avec new sont déjà stockées sur le tas, et sa taille peut être ajustée au moment de l'exécution( par opposition à statiquement déclaré tableaux, qui ont une compilation de taille fixe, et sont stockés dans la pile ).
OriginalL'auteur akaltar
Le type d'une variable à une dynamique de tableau est un pointeur vers le premier objet de la matrice. Vous voulez un tableau de alloués dynamiquement des objets, donc un tableau de pointeurs de Stock, de sorte que votre variable est un pointeur vers un pointeur de Stock:
et en la libérant:
OriginalL'auteur Frederic Lachasse
ne fonctionne que si les Actions de la classe a un zéro argument du constructeur
si elle n'a pas de zéro argument constructeur vous ne pouvez pas créer un tableau d'objets dynamiques dynamiquement
vous pouvez comme l'a dit de créer un tableau d'objet dynamique avec un tableau statique comme
mais la syntaxe
ou comme le dit
utiliser des vecteurs...
les vecteurs sont la mémoire allouée sur le tas
si le vecteur est une allocation dynamique
ou
La raison pour laquelle
ne tient pas
est parce que
cela signifie
vous êtes à l'aide de l'opérateur new incorrectement
OriginalL'auteur mono
J'ai fait quelque chose qui a fonctionné parfaitement:
Oui... j'ai utilisé pointeur de pointeur pour le tableau de la partie, et cela a fonctionné parfaitement pour une taille variable tableaux.
OriginalL'auteur Soumyadeep Thakur