utilisation de shared_array [BOOST] - C++ - Programmation
Marsh Posté le 05-07-2006 à 18:34:25
?
ou est le probleme ? en c++ tu peux déclarée tes variables ou tu veux, et pas seulement en début de bloc
Code :
|
il y a aussi la methode reset (voir doc)
Marsh Posté le 05-07-2006 à 18:45:32
Oui, bon la bien sûr...
mais bon l'histoire c'est que je suis en train de faire un loader de fichier .MS3D (Milkshape 3D) et donc j'ai créé une classe Object qui contient tout les vertices, les groupements de vertices pour former les triangles, les groupements de triangles pour former les Mesh,...
Alors dans ma class j'ai déclaré tous mes shared_array et au fur et a mesure que je lis mon fichier MS3D je prend connaissance du nombre de Vertices et tout...
et donc la je veut allouer de la mémoire dynamiquement pour pouvoir les stocker...
donc c'est pour celà que je vous demmandait comment je pouvais faire
Marsh Posté le 05-07-2006 à 19:09:51
ReplyMarsh Posté le 05-07-2006 à 19:24:21
Amonchakai a écrit : ha bha oui, j'suis con... |
si, mais utilise std::vector et ajoute les elements avec push_back, la taille tu l'as a la fin du traitement avec la methode size()
edit: c'est bien de chercher à utiliser boost mais ne fait pas une fixation dessus, dans ce cas la un vector convient mieux et dans boost il y beaucoup de bibliotheques tres pratiques autres que les smart pointer
Marsh Posté le 05-07-2006 à 18:26:53
Bonjour,
j'ai actuellement un problème avec les pointeurs intelligent de Boost car je n'arrive pas a allouer de la mémoire dynamiquement :
car voilà pour créer ce type de pointeur je sais faire ça :
mais voilà moi je voudrais faire un truc du genre car au moment où je déclare array je ne suis pas sencé connaitre le nombre d'entier sur lequel je veux pointer
mais bon la ça marche pas. Je comprends bien que les shared_array sont des classes donc on peut pas les utiliser comme ça. Mais j'arrive pas a trouver dans la doc de boost le moyen de faire ce que je veux. Je me doute bien qu'il doit exister un moyen...
Donc voilà si quelqu'un pourrait m'aider ce serait super sympa... Merci