CONNEXION
  • RetourJeux
    • Sorties
    • Hit Parade
    • Les + populaires
    • Les + attendus
    • Soluces
    • Tous les Jeux
    • Gaming
  • RetourActu Gaming
    • News
    • Astuces
    • Tests
    • Previews
    • Toute l'actu gaming
  • RetourBons plans
    • Bons plans
    • Bons plans Smartphone
    • Bons plans Hardware
    • Bons plans Image et Son
    • Bons plans Amazon
    • Bons plans Cdiscount
    • Bons plans Decathlon
    • Bons plans Fnac
    • Tous les Bons plans
  • RetourJVTech
    • Actus High-Tech
    • Intelligence Artificielle
    • Smartphones
    • Mobilité urbaine
    • Hardware
    • Image et son
    • Tutoriels
    • Tests produits High-Tech
    • Guides d'achat High-Tech
    • JVTech
  • RetourCulture
    • Actus Culture
    • Culture
  • RetourVidéos
    • A la une
    • Gaming Live
    • Vidéos Tests
    • Vidéos Previews
    • Gameplay
    • Trailers
    • Chroniques
    • Replay Web TV
    • Toutes les vidéos
  • RetourForums
    • Hardware PC
    • PS5
    • Switch 2
    • Xbox Series
    • Switch
    • Pokemon pocket
    • FC 25 Ultimate Team
    • League of Legends
    • Tous les Forums
  • PC
  • PS5
  • Xbox Series
  • Switch 2
  • PS4
  • One
  • Switch
  • iOS
  • Android
  • MMO
  • RPG
  • FPS
En ce moment Genshin Impact Valhalla Breath of the wild Animal Crossing GTA 5 Red dead 2
Liste des sujets

question c++ sur les constructeurs (poo)

sonic66
sonic66
Niveau 10
02 juin 2005 à 16:53:37

Voila , je n´ai pas bine compris l´utilit" d´un constructeur , ne fait , jai compris quils servait a donner des valeurs ou autre a des donnes privés et autre , mais dans c cas la , on peut modifier les donnés privées et donc pourquoi les mettre en privé??? :ouch:

godrik
godrik
Niveau 30
02 juin 2005 à 16:59:53

l´idée d´un constructeur, c´est que ton objet ( une fois la construction terminé) soit dans un état utilisable, cohérent.

par exemple, un objet PacManLeJeu contiendra le tableau de jeu et le nombre de monstre. Ton constructeur sert a rendre l´objet cohérent soit, charger le tableau a partir d´un fichier ou quelquechose comme ca.
apres, je pense que tu n´as pas compris le principe des etiquettes de protections.
Si un champ est private ca veut dire que personne a l´exterieur de la classe ne peux venir de trifouiller le machin. pas qu´il est inaccessible.

finalement une petite URL:
http://www.mandragor.org/tutoriels/cpp/6
( je le dis, je n´arrete pas de me citer)

sonic66
sonic66
Niveau 10
02 juin 2005 à 17:14:18

j´e sais ca , mais quand on defini le constructeur , on peut mettre les valeurs quon veut aux objets...

Fenix[74]
Fenix[74]
Niveau 10
02 juin 2005 à 17:21:43

from godrik: ( ce que c´est chiant la limite de message)
bien sur.
la suposition de base dnas la programmation objet est que l´objet fait bien les choses.
l´interet de private c´est de te proteger de ce que font les autres objets ( qui eux ne sont pas supose savoir comment toi tu marche)

dnob700
dnob700
Niveau 10
02 juin 2005 à 22:45:06

par exemple un exemple concret :

ma librairie graphique cré une fenêtre. je doit donc garder une référence de cette fenêtre ( comme un pointeur). on appelle ça un hwnd.
Mais je ne veux surtout pas que l´utilisateur puisse modifier ce hwnd. donc c´est une donnée private.
Mais quand on cré un objet de cette classe il faut bien créer une fenêtre. C´est le constructeur qui s´en charge, qui enregistre le hwnd de la fenêtre dans ma variable et après toute les autres fonction de ma classe peuvent lire ce hwnd ( ou pourrait le modifier) mais pas les fonctions hors de ma classe ( celle de l´utilisateur ou d´autre objet).

Musashi001
Musashi001
Niveau 10
02 juin 2005 à 22:51:24

erf je suis en trai de voir les constructeur dans mon bouquin et en gros j´ai compris ca:

Un constructeur, c´est une fonction membre spéciale ( syntaxe particulière ) qui s´éxécute à partir du moment ou tu crée un objet ( en static ou en dynamic)

ex:
tu crée un objet dans une classe ou tu as précédament fait un constructeur, puis le code du constructeur s´éxécute ( c´est l´endroit idéal pour initialiser des variables)

Sinon pour l´histoire des ´public´ et ´private´ c´est différent, en fait lorsque tu déclare un classe tu peut faire en sorte que certaines données à l´interieure de cette dernière soient ´protégée´ ( private) grace à la portée.

E revanche si tu met toutes tes classes en public alors tout est accessible sans restrictions.

Après tu peut combiner les deux...

Mice-Moogle
Mice-Moogle
Niveau 6
02 juin 2005 à 23:01:12

L´avantage des constructeurs c´est que tu peux les surcharger !
en effet, une classe ( et donc un objet) peut être initaliasé différent selon les paramètres que tu lui donnes : l´avantage : un code structuré et dans la facon de penser de la POO. Bien sur tu pourrais faire des fonctions te permettant d´initialiser differemment tes variables mais si tu fais cela, tu centralises tes informations sur le traitement et non l´objet donc tu te retrouves dans un autre concept de programmation ( le procédural)
l´avantage de la POO est de justement de ne pas avoir à t´embêter : tu n´as pas besoin de savoir comment fonctionne une voiture pour l´utiliser ? dans l´esprit, la POO c´est pareil.

Sous forums
  • Aide à l'achat Mac
  • Macintosh
  • Création de Jeux
  • Programmation
  • Création de sites web
  • Linux
  • Internet
  • Steam Deck
  • Hardware
La vidéo du moment