![Citation](https://forum.developpez.be/images/misc/quote_icon.png)
Envoyé par
blueLight
1 2 3 4 5 6 7
| contructeur(const int nbVertices, const float * tabVertices)
{
this->nbVertices=nbVertices;
vertices = new float[(nbVertices+1)*3];
indexes = new int[nbVertices * 3];
memcpy(vertices, tabVertices, sizeof(nbVertices * 3));
} |
Bonjour,
Avec le code ci-dessus, la variable "vertices" n'est pas initialisé... C'est un attribut de type float *, par contre tabVertices à les bonnes valeurs, je ne comprend pas pourquoi l'affectation echoue...
Pourriez vous m'aider ?
Salut,
sizeof(nbVertices * 3) te retourne la taille du type int. Tu voulais probablement écrire :
memcpy(vertices, tabVertices, nbVertices * 3);
Trois questions :
1/ Pourquoi utiliser des float et non des doubles ?
2/ Pourquoi ne pas utiliser un std::vector ?
3/ Si vraiment tu veux rester avec un tableau dynamique à la main, pourquoi ne pas l'encapsuler dans un pointeur intelligent (Boost.shared_array) ?
Partager