Tom's Guide > Forum > Programmation > 2 problèmes en C++
Mot :    Pseudo :           
 

Bonjour à tous, je suis en train de lire un bouquin sur les algorithmes pour la synthèse d'image 2D et 3D : j'ai donc voulu commencer par faire un petit programme en mode console qui affiche une droite à l'écran (qui sera l'objet de nombreuses manipulations)...
- Bref, j'ai besoin d'allouer dynamiquement la mémoire avec new au sein d'une fonction sachant que j'ai besoin du tableau alloué dans le corp principal de mon programme (passage par pointeur). Le problème est le suivant : où dois-je placer le "delete" ???car si je le met en fin de ma fonction, je ne pourrai pas m'en servir dans le corps principal, si je le met dans le corp principal, il y a une erreur (normal car on n'accede pas aux variables locales à partir du corp principal).
- 2eme pb :
Je cherche juste une petite fonction tres simple (genre un truc en assembleur où on se sert juste des interruptions dos) qui affiche un pixel à l'ecran (genre putpixel(x,y,couleur) ) donc si qqun avait le code (+ qques explications simples) ou un site pr telecharger ceci ca serait cool.

Merci à vous.

Liens sponsorisés
Inscrivez-vous ou connectez-vous pour masquer ceci.

Slt,

Pour ta suppression de pointeur, il faut que tu cré un destructeur.
Exemple :

Code :
  1. Classe::~Classe
  2. {
  3.   Delete[] Tab;
  4. }



Sinon, tu peut aussi mettre << Delete[] Tab; >> en fin de programme, non ?

Pour ton 2eme soucis, je peus pas te renseigner, désolé.


Message édité par pepito62 le 10-08-2006 à 19:21:40
Répondre à pepito62

ok, je n'avais pas utilisé de classe à la base : c'était un programme avec un corps principal et une fonction qui allouait la mémoire...J'ai utilisé une classe en mettant delete dans le destructeur et effectivement le pb est réglé.
merci.

Répondre à abel_b
Tom's Guide > Forum > Programmation > 2 problèmes en C++
Aller à :

Il y a 1442 utilisateurs connus et inconnus. Pour voir la liste des connectés connus, cliquez ici.

Attention

Vous allez répondre sur un sujet resté inactif pendant plus de 6 mois.
Assurez-vous d'apporter des éléments nouveaux à la discussion avant de poursuivre.

Répondre Annuler
Liens