Quel objet fait 1 cm ?

Quel objet fait 1 cm ?

Comment utiliser un centimètre ? Généralement, on utilise la version de 30 centimètres de la règle métrique et chaque centimètre est indiqué par un grand chiffre. Chaque centimètre (cm) est divisé par 10 petits traits représentant chacun les millimètres (mm). La lecture d’une règle métrique se fait de la gauche vers la droite. Comment mesurer 20 cm sans règle ? L’empan correspond à la distance entre le bout du pouce et le bout de l’auriculaire (le petit doigt) quand ils sont écartés au maximum. Il fait environ 20 cm.8 juil. 2021 Comment mesurer avec les doigts ? Il suffit de vous équiper d’une simple feuille de papier que vous découperez en forme de ruban. L’enrouler autour de votre doigt et annoté lorsque le papier se superpose. Munissez-vous de votre règle et mesurer votre ruban de papier déplié. prenez le résultat en millimètres qui vous donnera votre tour de doigt.7 nov. 2018 Qu’est-ce qui mesure 0 1 mm ? Afin de mesurer des longueurs, que ce soit en physique ou encore en chimie, on utilise des unités plus petites que le millimètre. On retrouve donc le nanomètre qui mesure 0,000001 millimètres et le micron qui mesure 0,001 millimètre et 1000 nanomètres. Comment mesurer 1 m ? Pour mesurer avec ses jambes et ses pieds, c’est tout aussi facile qu’avec sa main ou son doigt. Il faut juste retenir qu’une enjambée normale fait en moyenne 65 cm et qu’un grand pas fait environ 1 m. Donc si vous faites par exemple 20 grands pas, c’est que la distance mesurée est de 20 mètres.14 mai 2022

C’est quoi 1 m ?
Comment mesurer sans instrument ?
Qu’est-ce qui mesure 1 micromètre ?
C’est quoi 1 mm ?
Comment mesurer 1 m sans mètre ?
Comment mesurer sa taille en cm ?
Comment mesurer avec un portable ?
Comment calculer des CM ?
Quelle est la plus petite dimension ?
Qu’est-ce qui mesure 1 nanomètre ?
Quelle est la différence entre mm et cm ?
Comment tracer des mm ?
Comment mesurer son poignet sans mettre ?
Qu’est-ce qui mesure 10 cm ?
Qu’est-ce qui fait 7 cm ?
Quel objet mesure 10 cm ?
Est-ce que 100 cm 1 m ?
Comment mesurer un sac à main ?
Comment calculer les cm ?
Comment calculer 1 mm ?
C’est quoi 1 dm ?
Quelle taille pour un bracelet ?
Quel est le tour de taille normal pour une femme ?
Quelle est la longueur d’un cercle de rayon 3 cm ?
C’est quoi 100 cm ?
C’est quoi 1 pouce ?
C’est quoi 1 hm ?
Qu’est-ce qui mesure 1 dam ?
Quelle est la taille d’un poignet ?
Comment savoir si on a un petit poignet ?
Quel poids pour 1m65 ado ?
Quel est le poids idéal pour 1m60 ?
Quelle est la longueur d’un cercle de diamètre 5 cm ?
Comment calculer un cercle en cm ?

C’est quoi 1 m ?

 mètre. 1. Unité SI de longueur (symbole m) égale à la longueur du trajet parcouru dans le vide par la lumière pendant une durée de 1s299 792 458 de seconde.

Comment mesurer sans instrument ?

Avec votre coude Autre partie de votre corps bien utile pour prendre une mesure : le coude. À partir du coude, on peut calculer la coudée. La coudée est la distance entre l’extrémité du majeur jusqu’à la pointe du coude. Sachez que cette distance est d’environ 45 cm.8 juil. 2021

Qu’est-ce qui mesure 1 micromètre ?

Le micromètre est un sous-multiple du mètre, qui vaut un millionième de mètre, soit un millième de millimètre : 1 μm = 10−6 m = 0,000 001 m. soit 1 μm = 10−3 mm = 0,001 mm .

C’est quoi 1 mm ?

Un millimètre (symbole mm) est une unité de longueur dérivée du mètre. Sa valeur est égale à un millième de mètre.

Comment mesurer 1 m sans mètre ?

Pour mesurer avec ses jambes et ses pieds, c’est tout aussi facile qu’avec sa main ou son doigt. Il faut juste retenir qu’une enjambée normale fait en moyenne 65 cm et qu’un grand pas fait environ 1 m. Donc si vous faites par exemple 20 grands pas, c’est que la distance mesurée est de 20 mètres. Simple et pratique !8 juil. 2021

Comment mesurer sa taille en cm ?

Se tenir debout, les pieds joints, les bras relâchés le long du corps. Prendre un mètre-ruban et le faire passer à mi-distance entre la dernière côte palpable et la crête iliaque (l’os au niveau de la hanche). Mesurer le tour de taille en fin d’expiration (sans retenir la respiration évidemment).1 juil. 2021

Comment mesurer avec un portable ?

Google Measure existe depuis quelques années déjà, mais cela fait seulement quelques semaines que presque la totalité des appareils Android peut en profiter. Le fonctionnement est très simple : il suffit d’ouvrir l’application puis de pointer l’appareil photo vers l’objet — ou la personne — de votre choix.8 sept. 2018

Comment calculer des CM ?

1 cm = 0,01 m Le m (mètre) et le cm (centimètre) sont deux unités de mesures de longueur dans le système métrique. Pour convertir une longueur en m en cm, on multiplie par 100 . Pour convertir une longueur en cm en m , on divise par 100.

Quelle est la plus petite dimension ?

Le nanomètre nm (millième de µm, 10-9m) : c’est la taille d’une petite molécule comme la molecule d’octane.21 oct. 2016

Qu’est-ce qui mesure 1 nanomètre ?

Le nanomètre, de symbole nm, est une unité de longueur du Système international. C’est un sous-multiple du mètre, il vaut un milliardième de mètre : 1 nm = 10−3 µm = 10–6 mm = 10–9 m.

Quelle est la différence entre mm et cm ?

Le millimètre représente un millième de mètre. Un millimètre est visible à l’oeil nu, mais commence à devenir une très petite mesure pour un homme. Le centimètre représente un centième de mètre. C’est l’unité la plus courante dans le langage parlé pour exprimer des longueurs d’objets utilisés par les humains.

Comment tracer des mm ?

Les chiffres (et la grande graduation qui va avec) représentent les centimètres, tandis que les autres traits représentent les millimètres. Toutes les petites graduations marquent les millimètres, que ce soit sur un double décimètre, un réglet, un mètre à mesurer… 1 cm vaut 10 mm.

Comment mesurer son poignet sans mettre ?

Pour obtenir le tour de poignet, rien de plus simple, il suffit d’utiliser un mètre ruban et de l’enrouler autour de votre poignet pour en mesurer sa circonférence.Si vous n’avez pas de mètre, utilisez une ficelle ou un ruban puis reportez-le sur une règle.

Qu’est-ce qui mesure 10 cm ?

Pour obtenir 1 dm, il faut 10 cm. Voici quelques objets qui mesurent environ un décimètre : un stylo, un paquet de mouchoirs en papier, un moineau, une limace… Voici quelques objets qui mesurent environ un centimètre : un grand carreau de cahier, un timbre, l’ongle de ton pouce, une abeille, un bigorneau…

Qu’est-ce qui fait 7 cm ?

1. Avec le doigt comme mesure étalon

Quel objet mesure 10 cm ?

Pour obtenir 1 dm, il faut 10 cm. Voici quelques objets qui mesurent environ un décimètre : un stylo, un paquet de mouchoirs en papier, un moineau, une limace… Voici quelques objets qui mesurent environ un centimètre : un grand carreau de cahier, un timbre, l’ongle de ton pouce, une abeille, un bigorneau…

Est-ce que 100 cm 1 m ?

1 mètre est égal à 100 centimètre, qui est le facteur de conversion de mètre à centimètre.

Comment mesurer un sac à main ?

Pour mesurer un sac à main, il faut d’abord mesurer la longueur du sac. Pour ce faire, mesurez du haut du sac jusqu’au fond du sac. Ensuite, mesurez la largeur du sac en le tenant à plat. Pour ce faire, mesurez du côté le plus large du sac jusqu’au côté le plus étroit du sac.

Comment calculer les cm ?

1 cm = 0,01 m Le m (mètre) et le cm (centimètre) sont deux unités de mesures de longueur dans le système métrique. Pour convertir une longueur en m en cm, on multiplie par 100 . Pour convertir une longueur en cm en m , on divise par 100.

Comment calculer 1 mm ?

1 millimètre est égal à 0.1 centimètre, qui est le facteur de conversion de millimètre à centimètre. Allez-y et convertissez votre propre valeur de mm en cm dans le convertisseur ci-dessous. Pour d’autres conversions dans longueur, utilisez l’outil de conversion longueur.

C’est quoi 1 dm ?

 décimètre Mesure de longueur qui vaut la dixième partie du mètre (symbole dm).

Quelle taille pour un bracelet ?

Pour les enfants la taille varie entre 14 cm et 16 cm. Pour les hommes, la taille standard va de 20 à 21 cm. Mais pour la gent masculine, la taille des bracelets peut aller de 18,5 à 23 cm. Pour les femmes, la taille des poignets varie autour de 19 cm et 20 cm pour les ports amples.

Quel est le tour de taille normal pour une femme ?

Tour de taille : quelles sont les mensurations normales et idéales ? Pour les femmes, un tour de taille de moins de 88 cm est une référence normale et moins de 75 cm est un tour de taille idéal. Pour les hommes, un tour de taille de moins de 1 m est une bonne moyenne et un tour de taille de moins de 88 cm est idéal.28 sept. 2022

Quelle est la longueur d’un cercle de rayon 3 cm ?

Calculer la longueur d’un cercle, c’est calculer son périmètre. C’est-à-dire 2 fois le rayon (r) multiplié par 3,14 (π = 3,14).

C’est quoi 100 cm ?

1 mètre est égal à 100 centimètre, qui est le facteur de conversion de mètre à centimètre.

C’est quoi 1 pouce ?

En France, tout comme dans le reste du monde, le pouce correspond à 2,54 cm dans notre système de mesure métrique courant. L’abréviation de pouce est 1 ».

C’est quoi 1 hm ?

(Métrologie) Symbole de l’hectomètre, unité de mesure de longueur du Système international (SI), valant 100 mètres (10 2 mètres).

Qu’est-ce qui mesure 1 dam ?

(Métrologie) Unité de mesure de longueur du Système international (SI), valant 10 1 mètres, et dont le symbole est dam. (Métrologie) Chaîne d’arpenteur de dix mètres de longueur.

Quelle est la taille d’un poignet ?

19 cm

Comment savoir si on a un petit poignet ?

Mesurez votre poignet 15 à 16,5 cm pour les petits poignets. 5 à 17,5 cm pour les poignets moyens. 5 à 19 cm pour les grands poignets. 19 à 21 cm pour les très grands poignets.

Quel poids pour 1m65 ado ?

Ainsi, si vous mesurez 1m65, votre poids idéal = 165 – 100 – (165 – 150)/2 est de 57,5 kilos.15 mars 2022

Quel est le poids idéal pour 1m60 ?

Par exemple, pour obtenir un résulat d’un IMC (Indice de masse corporelle) compris entre 18,5 et 25 quand on mesure 1m60, il faut peser entre 47,5 kg et 64 kg.1 avr. 2020

Quelle est la longueur d’un cercle de diamètre 5 cm ?

Soit un cercle de centre O. Son diamètre AB mesure 5 cm. Quelle est la longueur de ce cercle ? La longueur du cercle O est d’environ 15,7 cm.1 févr. 2022

Comment calculer un cercle en cm ?

Calculer la longueur d’un cercle, c’est calculer son périmètre. C’est-à-dire 2 fois le rayon (r) multiplié par 3,14 (π = 3,14). Ex. : un cercle qui a un rayon de 5 cm a un périmètre de : 2 × 5 × 3,14 = 31,4 cm.


bonjour et bienvenue dans ce court de l’ulif ap3 algorithmique et programmation avancée dans ce chapitre nous allons voir les classes et les objets pour comprendre les casser les objets on va faire un petit retour sur des choses que le conte dès qu’ils sont les structures de données dans d’une suture de niche vous aviez définis uniquement des champs d’accord qu’ils étaient des variables associées à des types et vous pouviez ainsi créer des des variables du type structure et accéder au chant de la structure avec l’opération point les fonctions et les procédures qui manipulait les champs de ces structures devaient être définies en dehors de la structure telle que des procédures de saisie ou d’affichage du contenu d’une structure donc la structure devait donc être passés en paramètres de la fonction de la procédure afin d’être manipulé lui modifié et c’est par exemple dans ce combat en dessous sur la structure aux dates en notation dingo rythmique à gauche et en syntaxe c++ à à droite on a une structure date qui contient trois champs entiers jour mois et années et on a une procédure à part procédure globale qui s’appelle saisir date qui prend une date en paramètre d’accord la date d qui est une référence sur la date qui n’est pas constante la référence puisque le but de saisir date c’est de modifier la dax et qui avait pour but donc de saisir les trois données les trois champs de manière indépendante son faisant des affiches et des saisies au décès a ajouté des saisines en c++ sur les trois champs de la date qui est passé en paramètre c’est comme la date est passée en mode données résultat les modifications qui sont faites à l’intérieur de saisir dates sont bien répercutées sur la date qu’on passe en paramètre donc on n’avait pas le choix on était obligé de fonctionner de cette nuit là le principe d’une classe et à ses proches sauf que on s’aperçoit que finalement ce serait quand même très pratique si on pouvait associer les fonctions des procédures qui manipule une structure directement à ce type structure on aurait du coup plus besoin de la passer en paramètre de ses fonctions qui la manipulent et on n’aurait plus besoin non plus du coup de d’accéder de manière explicite avec la notation du point auchan on pourrait avoir un accès direct à la donne et qui associé à la structure à la structure de qui englobe les données donc c’est le principe d’une classe donc c’est un peu une extension d’une structure où on va pouvoir définir des chants qu’on ne va plus appeler champ mais qu’on va appeler membres et qu’on va pouvoir aussi définir des fonctions et des procédures qui manipule les données de cette classe donc les membres d’une classe peuvent être de deux types du coup les données membres qui sont du coup l’équivalent des chants d’une structure qui se sort qui sont des variables avec des types et puis les fonctions membres qui sont du coup les fonctions des procédures qui manipule les données membres on va appeler les variables qui sont issus d’un type définie par une classe un objet ou bien une instance de classe c’est pour ça que les langages de programmation qui utilisent ce principe là sont des langages de pression dit orienté objet puisque ce sont des objets de classe et que toutes les variables deviennent du coup des objets de classe chaque membre d’une classe que ce soit des données ou des fonctions à un spécifique at her d’accès donc c’est spécifique aussi aux classes par rapport aux structures il va indiquer si le programme qui est externe à la classe a le droit de manipuler c’est à dire de lire et écrire le membre donc la donne et où la fonction donc manipuler la donnée ou bien appeler la fonction si un membre et public qui est l’un des deux spécifique à terre le programme peut donc accéder aux membres donc lire et écrire la donnée ou appeler la fonction si un membre et deep river alors il peut pas par défaut s’il n’est pas spécifié dans le code c’est le spécifique at her d’accès privé qui est utilisé en c++ il existe en fait un troisième spécifiques at her mais on ne va pas le voir dans cette poule à vous le verrez dans une une prochaine les membres eux de la classe sont toujours accéder de la même manière donc de la même manière que les structures grâce à l’eau batteur points et on se rappelle aussi de du raccourci qu’on a vu la dernière fois lorsqu’on a un pointeur sur un objet on va d’abord le des références et puis en ce site appelé le point et que ça c’est équivalent à l’écriture avec la flèche directement entre le pointeur et le monde alors la notation pour être capable de déclarer une classe en notation algorithmique à gauche et on sait plus à droite on va utiliser le mot clé classe donc avec un grand c est à eux en notation algorithmique et tout en minuscule 100e en c++ le juste après on donne le nom de la classe en c++ après on ouvre une accolade parce que c’est encore une fois donc ça marche comme les structures 1 et puis ensuite on liste les membres de la classe et donc on les listes en dedans le spécifique at her d’accès du membre et ensuite le membre les spectateurs d’accès peuvent être fermés un blog dont on peut rassembler tous les membres qui ont le même spécifique spectateurs d’accès donc c’est l’exemple qui est en dessous et en fait effectivement en général c’est comme ça que c’est fait en pratique on va écrire une seule fois chacun des deux pays signataires d’accès et on va mettre tous les publics et tous les privés ensemble donc on n’a plus qu’à lister les membres après les deux points par convention on va tout de même regrouper les membres par spécifiques à des accès en commençant par les publics et ensuite par les privés mais on va tout de même séparer les données et des fonctions ce qui veut dire que par convention en général on tient un code qui ressemble à ça pour une la déclaration d’une classe on aura d’abord toutes les données tous les membres public ensuite tous les membres privés et d’abord les données membres public ensuite les fonctions membres public après dans le secteur de priver on aura d’abord les deux des membres privé et ensuite les fonctionnements de priver donc c’est par convention on en n’est pas tenue évidemment mais conventionnellement c’est comme ça que on le fait un petit exemple du coup avec l’équivalent de la structure date qui maintenant est converti en une classe date on va avoir notre classe date en dotation algorithmique ici pour l’instant envers en c++ tout à l’heure on a notre spectateurs d’accès public puisqu’on aura envie de capable de la foi de manipuler directement nos trois données membres jour mois et années et on a aussi envie d’être capable de directement appelé depuis l’extérieur dans typiquement le principal les procédures de saisir et d’affichage donc ici on a bien aux 3,2 des membres publics qui sont trois entier jour moyen année on a une procédure saisir et on s’aperçoit qu’on n’a pas de paramètres à la procédure saisir effectivement on a plus besoin puisqu’il n’y a pas d’ambiguïté sur lequel sur le l’objet sur lequel en train d’interagir puisque ça va être spécifiées à l’appel de la faute de la procédure ensuite on peut directement affichées donc c’est sûr le jour et là encore une fois on s’aperçoit qu’on peut directement manipuler la donne est membre jour on n’a pas besoin de la précéder de quoi que ce soit suivie d’un point on va directement accéder un jour mois et années parce que encore une fois il n’y aura pas d’ambiguïté on sait exactement quel jour mois et années de quelle date on va saisir puisque on va le faire lors de l’appel le spécifier lors de l’appel mais au lieu de passer en paramètre de saisir on va appeler saisir sur l’objet qu’on veut qu’on veut c’est à dire pareil pour la posture d’affichage qui ne prend rien en paramètre qui est appelée sur l’objet qu’on veut afficher et donc du coup on est capable directement d’accéder à jour mois et années et de l’est d’afficher l’écran ici on s’aperçoit qu’on a décidé aussi dans la classe date de créer une fonction privée pas de données membres privés ici on en a pas il a réalisé rapport il apparaît très normalement entre le mot clé privée et puis la première fonction mais là on en a pas donc cette fonction privée elle s’appelle convertir en jour elle prend pas de paramètres et retourne en entier on peut imaginer ce qu’elle fait c’est qu’elle va convertir la taxe en un nombre de jours d’accord depuis une certaine autre date par exemple et c’était restera donc trois petits points parce qu’on peut imaginer encore ajouter d’autres d’autres fonctions membres privés à la classe le programme principal lui qu’elles sont à droite on s’aperçoit qu’on va créer une variable de type date aucun objet de la classe date qui va s’appeler une date est ce qu’on fait dans le brouhaha principal ici c’est que on va saisir la date donc on va appeler la fonction membres saisir sur l’objet une date objet de la classe date et de la même manière on va appeler la fonction affiché sur l’objet une date qui est l’objet de la classe dax donc il n’y a pas d’ambiguïté on sait très bien que jour mois et années qui sont les trois données membres public ici lorsqu’on va faire cet appel là ça veut dire qu’on va modifier on va saisir le jour le mois et l’année pour l’objet qui s’appelle une date et on pourrait très bien évidemment appelé avoir une autre une autre variable un autre objet de la classe date l’appeler autrement est appelée saisir sur cet autre objet alors à ce moment-là jour mois et années de saisir et ben modifierait les trois données membres associés à cette autre objet ici on s’aperçoit que on n’a pas le droit d’appeler la fonction membres privés convertir en jour donc dans le programme principal on n’a pas le droit d’écrire une date point convertir en jour ça fera une erreur à la compilation donc cette chose-là et vérifier à la compilation à la compilation vérifier est ce que on a bien le droit d’appeler tout ce qu’on est en train d’appeler il va s’apercevoir que convertit en jour et privés à la classe donc on n’a pas le droit de l’appeler depuis le principal par contre on a le droit d’appeler convertir en jour depuis les autres fonctions membres de la classe qu’elles soient publiques ou qu’elles soient privées donc on pourrait très bien ap les convertir en jour à l’intérieur de saisir bon il y aurait pas trop de sens à le faire en fonction pas en relation est ce qu’on veut que c’est face mais on a le droit de le faire donc on va bien que nous n’avons plus besoin de spécifier le jour par exemple saisi correspondant à la variable paramètres la variable structurants paramètres d’accord l’objet sur lequel la fonction est appelée va indiquer de manière unique non ambiguë quel est l’objet manipule et donc quelles sont les données membres qui sont à modifier lorsqu’on fait un appel particulier ici je suis en fait à une date point saisir alors il n’y a pas d’hésitation pas de n’y a pas d’ambiguïté le la donne est membre jour correspond à la donne et man au jour deux l’objet une date et pas un autre d’accord et si on n’écrit plus tard un autre appel à saisir sur un autre objet et bien le jour fera référence à la donne et jour de s’être trop objets et donc il n’y a plus d’ambiguïté il n’y a pas besoin de le passer en paramètre par contre il a besoin de l’appeler sur l’objet en utilisant la notation du point en c++ à quoi ça ressemble tout ça on a du coup notre mot clé classe le nom de la classe qui s’appelle dates ici tout est écrit entre accolade ne pas oublier comme on l’a fait avec les structures ne pas oublier le point virgule à la finlande et la déclaration de la classe accord c’est une instruction en soi donc ça se finit par un point virgule on a décidé de mettre en public trois les trois données membres ici qui sont tous les trois des entier donc int jour mois année et on a le dos procédures publiques saisir et afficher et notre fonction privée convertir en jour dans la procédure publique saisir on fait des ces hautes et d’essayer in pour récupérer les trois les trois valeurs des trois entier qu’on veut affecter notre objet de la classe date et dans un fichier on fait des ca au t3 des trois données lors ici et se passer par des gardes et max h en privé on va avoir notre fonction convertir en jour qui ne prend pas de paramètres ici qui aurait pu mais comprend pas on ne donne pas le coach n’est pas très intéressant mais a notamment donné il ya un routeur n’da un entier et donc effectivement qui correspond au nombre de jours donc finalement pas trop de surprises dans l’écriture qui répond ce tir et qui ressemble pas mal à à une structure c’est juste que on va maintenant introduire à l’intérieur de la classe les fonctionnements grenade dans quelles fonctions qui manipulent les objets de la classe et on décide de caisse qui est public et qu’est ce qui est privé donc tous les membres d’un même type peuvent être mis les uns derrière les autres séparées par des virgules peut faire ça comme on le faisait avec les chants d’une structure comme on le prévoit on peut on seront s’aperçoit qu’on peut directement accéder aux membres de la classe sans avoir besoin de précéder par quoi que ce soit devant quand on écrit tout court jour mois et années rien devant et il n’y a pas de problème il n’y a pas d’ambiguïté c’est lors de l’appel que l’on va savoir quel de quelles données membres de quel objet en parle et voici le programme principal qui correspond on à la création de notre objet de la classe date en écrivant juste date une date et puis les deux appels aux deux fonctions membres ici saisir et affiché sur l’objet une date est donc effectivement c’est perçu ici comme saisir est appelée sur l’objet une date il n’ya pas n’y a pas d’ambiguïté c’est forcément les données membres jour mois yann et de cet objet là dont on parle et qu’on manipule et pas un autre objet donc la première la saf et la création de la de la classe date ça fait des réserves au passage c’est une réservation mémoire sur la pile on va évidemment on verra tout à l’heure on va pouvoir créer sur le sur le tas des objets de nos classes évidemment on verra tout à l’heure l’asp sur la pile on accède à odienné man vie publique on s’aperçoit ici quand même que comme les trois donné membres étaient aussi public on a aussi le droit dans le programme principal d’accéder de modifier directement les données membres de l’objet une date donc on aurait très bien pu écrire une date point jour égal disent quelque chose comme ça on aurait très bien pu l’écrire puisque les deux énormes son public si elle était privée on n’aurait pas pu le faire par contre n’en est toujours pu accéder à saisir si ces dires étaient restés public donc on peut ici du coup quand je vous dis on peut aussi créer des instances de classe sur le tas en utilisant l’allocation dynamique de mémoire avec le mot-clé new et puis la libération avec 10 litres comment est-ce que ça s’écrit donc on a une date donc on a on va créer la nouvelle date sur le tas avec le mot-clé new avec le type de l’objet qui s’y date ça on se rappelle que ça nous retourne l’adresse mémoire sur le tas de ce qu’on a réservé pour pouvoir stocker une date c’est une adresse mémoire un pointeur c’est pour ça qu’on l’a fait qd à une variable qui s’appelle péters une date qui est un pointeur donc une adresse mémoire sur le tas ici de sur une date qui pointe sur une date du coup le dat étoiles ttr une date et gagne ou date ensuite on peut faire exactement la même chose que ce qu’on a ce qu’on fait sur la pile on peut appeler saisir affiché on peut aussi y est manipulé les données un membre les deux les membres puisque à son public et on va on va le faire à travers le pointeur sur la date et comme on l’a déjà vu on pourrait très bien des références et le pointeur puis utiliser le point mais on a vu que c’était quand même beaucoup plus simple d’utiliser la natation avec la flèche donc si on peut très bien directement appelé saisir en faisant le pointeur sur la datte flèche saisir ou flèche affiché on peut aussi faire un flèche jour en lui donnant par exemple une nouvelle valeur quand on a fini d’utiliser notre notre date mais quand on n’a plus besoin on libère la mémoire qui étaient alloués sur le tas voisins at il dit avec le pointeur sur la date qu’on avait alloué donc à nous c’est évidemment là la notation avec cet opérateur là vous pouvez écrire l’un ou l’autre les notations de la flèche quand même un peu plus approprié on peut bien sûr créer un tableau de date d’accord donc le un tableau de d’objets de classe que vous avez créé vous même ça que ça veut dire dans lequel un peu plus générales vous pouvez le créer sur la pile en faisant par exemple je crée un tableau qui s’appelle tab date où tous les éléments sont de type date donc c’est pour ça qu’on écrit date table date et puis juste derrière entre entre crochets la taille qui doit être constante vous étiez un entier positif qui décrit le nombre d’éléments de ce tableau sur la pile ou bien sur le tas en utilisant le nude ou comme on l’a fait au dessus mais en rajoutant des crochets en disant que voilà je vais créer un tableau de taille de taille taille de d’éléments qui sont du type date donc ça c’est le dates ici le date là qui disent que c’est ce sont des éléments de tim dax le new retourne l’adresse mémoire du premier élément du tableau on le met dans une variable qui s’appelle table dates ici et puis lorsqu’on a fini de l’utiliser on n’oublie pas de libérer l’espace ouvert qu’on vient d’allouer pour un pour ce tableau en faisant un deal it avec crochet crochet ce que c’est un tableau cette phase i de notre tableau de date vous avez peut-être déjà aperçu que les deux instructions qu’on a écrites l’une pour réserver sur la pile et l’autre sur le tas qui était date une date point virgule et date étoiles ptr une dette égale nude à 3,1 pour la version sur la sur le tas ce que ça fait c’est que sa réserve de la mémoire que ce soit sur la pile respectivement sur la pile ou sur le tard pour pouvoir stocker l’instance donc un objet de la classe date qu’est ce que c’est qu’être capable d’avoir suffisamment de mémoire pour stocker un objet d’une classe c’est uniquement directement à voir sujet devant espace pour stocker les deux n’est membre qu’elles soient publiques ou privées 2 cet objet là donc ce qu’on va en fait mettre en mémoire lorsqu’on crée un objet c’est uniquement de l’est cela sonnera pouvoir stocker les données membres de cet objet donc pour la classe date réservez de la mémoire pour un objet de la case date c’est la même chose que réserve et de la mémoire pour 3 entier jour mois et années pour nous ici et c’est vrai pour n’importe quel objet de n’importe quelle classe donc ces deux instructions ici qui sont écrites en eau ce qu’elles font donc à part réservé de la mémoire elles font aussi autre chose en plus c’est qu’elle appelle une fonction qui est très particulière une fonction membres de la classe qui est très particulière qui s’appelle le constructeur c’est un membre très spécial qui ressemble plus à une fonction qui a une donnée bien sûr qui peut être spécifiées par le programmeur de la classe et qui est exécutée lorsqu’on veut évidemment créer un objet de la classe le but 99% du temps lorsqu’on a besoin de spécifier le code de ceux de cette chose là c’est pour pouvoir initialisé correctement les deux des membres de la classe on valoir tout à l’heure il est appelé automatiquement à la création de l’instance donc que ce soit la version pile ou la version haute a comme on a juste au dessus le constructeur donc dans la classe il a exactement le même nom que le nom de la classe donc il ya même pas de choix de se poser la question comment je vais l’appeler son nom dans son en-tête du coup c’est exactement le même nom que le nom de la classe il n’a pas de type de retour donc c’est pour ça que c’est c’est ni vraiment une donnée ni vraiment une fonction membres d’une procédure membres parce que ça n’a pas de type de retour hmm hmm pas void rien du tout donc du coup c’est un petit peu différent c’est une procédure mais très particulière il existe un constructeur par défaut qui évite si le programmeur de la classe dans spécifie pas de manière explicite dans son code donc il existe toujours il est là mais c’est juste que sur l’a6 on le spécifie pas il existe mais il est vide il fait rien il fait rien et donc ce qui est fait lorsqu’on appelle aux constructeurs c’est uniquement la réservation mémoire pour les données membres et rien de plus parce que ça c’est quand même toujours fait il peut exister plusieurs constructeurs et ils vont différer par leurs paramètres parce qu’ils peuvent pas différer par leur nom puisque leur nom c’est forcément le même nom que le nom de la classe donc là la seule manière dont on a notre disposition pour les différencier c’est à travers leurs paramètres donc on va être capable de créer plusieurs constructeurs si on est capable d’avoir plusieurs paramètres différents donc c’est ce qu’on appelle le mécanisme de surcharge dont on parlera la prochaine fois il existe un équivalent 1 pendant aux constructeurs qui est le destructeur c’est un petit peu comme il ya le new deal à deal it eh bien il ya le constructeur il ya le destructeur donc lorsqu’une instance de classe va être des piles est automatiquement lorsqu’on sort du bloc d’instruction dans laquelle on l’a on a créé un objet de la classe delà de la classe sur la pile ou bien lorsque nous même explicitement on exécute l’instruction delete sur un pointeur sur le sur un objet de la classe alors la mémoire qui permet de stocker l’instance de classe c’est à dire les données membres de l’objet va récupérer donc lorsqu’on fait un deal it de ptr une date ce qui est fait c’est les trois données membres entière pour jour moye années vont être des élus et de la mémoire le destructeur est aussi appliquée lorsqu’on ne fait cet appel aux élites et lorsque l’instance et des piles est automatiquement par le mécanisme lorsqu’on sort du bloc d’instruction dans lequel on a créé donc c’est un membre si un petit peu spécial comme le constructeur il peut aussi être spécifiés de manière explicite par le programmeur pour exécuter des instructions il n’ya pas toujours des choses à faire ce sont des choses qu’on a envie de faire lorsqu’on est en train de détruire un objet il peut y avoir des choses intéressantes à faire on en verra il est appelé automatiquement lorsque le l’instance est détruite donc ou bien manuellement nous lorsqu’on fait un appel à deal it ou bien automatiquement en sortie de ville il a le même nom que le nom de la classe mais il est précédé par un symbole le symbole de thil delà sinon évidemment si on n’avait pas le symbole là ce serait du même nom que le constructeur et on pourrait pas les différencier donc pour les différencier le nom c’est le même donc la classe mais il ya un petit symbole particulier juste devant pour bien distinguer constructeurs et destructeur il n’y a pas de type de retour non plus comme le constructeur donc c’est une procédure mais très particulière parce que elle retourne même pas void il existe également un constructeur par défaut qui est aussi vide si le programmeur ne spécifie pas donc c’est le même principe que le constructeur par contre différemment du constructeur il n’existe qu’un seul destructeur possible c’est celui qui n’a aucun paramètre donc c’est impossible d’essayer de décrire en c++ un destructeur qui auraient des paramètres et d’être capable de l’appeler donc c’est juste pas possible on peut pas il ya qu un seul destructeur et il a aucun paramètre alors lorsqu’on veut faire un petit exemple donc en notation algorithmique avec ses constructeurs et destructeur donc on reprend notre classe de base avec nos trois données membres public jour mois et aniche et ici on va écrire deux constructeurs différents et un destructeur donc les deux constructeurs qu’on veut écrire leurs rôles encore une fois c’est de donner de d’initialiser l’objet qu’on est en train de créer donc typiquement 99% des cas encore ça consiste à donner des valeurs initiales à nos données membres là on a trois données membres jour mois et années donc le but des constructeurs ça va être donné des valeurs initiales ac3 donné membres d’accord lorsqu’on crée un nouvel objet donc si on a un constructeur qui n’a aucun paramètre qui est le premier constructeur qu’on a là d’accord donc ces dates avec rien dedans on peut décider que ça ça veut dire qu’on va créer un objet de la classe date avec aucune information parce qu’on n’a aucun paramètre donc on est en train de créer un nouvel objet mais on ne donne aucune information sur cet objet là donc là on a décidé que si on n’a aucune information sur la date qu’on est en train de vouloir créer on va décider que la date c’est le 1er janvier 1990 pour être n’importe quoi d’autre mais donc on l’a créée donc du coup on a décidé et on va affecter la valeur 1 à jour là falloir un à moi et la valeur de 1990 à année on peut avoir un deuxième constructeur qui diffère du premier par ces paramètres qu est la seule manière de différencier deux constructeurs qui lui va prendre par exemple trois anciens paramètres j aime et a donc ça ce sont des paramètres formelle qui vont évidemment représenté la valeur du jour du mois et de l’année qu’on a envie de donner à l’objet qu’on est en train de créer un corps donc tout simplement de coups ce qu’il faut faire c’est qu’il faut prendre le paramètre j le premier paramètre qui est donné que le nombre de jours qu’on veut avoir pour notre date et l’affecter à notre deux des membres le jour évidemment la même chose m est affecté à moi et à est affecté à année c’est comme ça qu’on va créer un objet de la classe date qui a comme données membres jour mois année l’équivalent de ce qu’on a rentré en paramètres du constructeur le destructeur lui il va déjà de base par défaut un évidement libérer l’espace mémoire qui est alloué pour notre pour stocker nos données membres jour moyenne et donc à part faire ça on n’a pas vraiment grand chose de plus à faire lorsqu’on détruit un objet de la classe dates ici pour voir un peu ce qui se passe on va juste décidé que dans le destructeur on affiche un message pour dire attention là ce moment là une date un objet de la classe date vient d’être détruit vient d’être super et supprimé de la mémoire voilà c’est juste un message informatif on lire et puis le reste de notre pour de notre classe et comme avant donc on peut avoir saisir affichée d’aider des fonctions privées comme on avait tout à l’heure qui convertir en jour et c’est grâce à ça change pas le problème principal pour être capable du coup maintenant d’appeler ce constructeur ces constructeurs et ce destructeur on va prendre un exemple avec deux dates on va prendre un exemple avec la première date ici donc variable une date qui arriva juste appeler le constructeur sans paramètres rien sans parenté est venu tout donc ça ça va ça identifie le fait qu’on va appeler le premier constructeur celui qui ne prend pas de paramètres et le deuxième qui est celui ci qui va nous dire que effectivement dans dati si ça prend des paramètres et ce qui est des parenthèses ça prend trois valeurs entière donc effectivement on s’aperçoit que ça va bien correspondre à bien cette entente est ici qui est un constructeur avec trois anti en paramètre donc c’est bien compatibles on sait bien ce constructeur là qu’on est en train d’essayer d’appeler et donc c’est bien celui-ci qu’on va appeler et donc si on fait afficher 2 une date et afficher deux autres dates et bien le premier affiche et va afficher un 1er janvier 1990 et le deuxième un fichier va afficher le 2 février 2000 voilà et puis au passage quand même les deux variables locales ici ou impôts programme principal vont être enlevées de la pile automatiquement lorsqu’on va sortir du droit blanc sauf lorsqu’on va arriver sur le fin donc du coup ça ça veut dire que le destructeur de date va être appelé deux fois une fois sur une date et une fois sur autre date est donc ici à l’écran on va avoir deux messages de messages date détruites donc deux fois on aura deux lignes qui vont écrire date détruites le premier pour une date est le deuxième pour autre date et ça cet appel à effet automatiquement puisque on sort du bloc d’instruction dans lequel on a déclaré nos deux variables une date et autres dates plus plus à quoi ça ressemble c’est assez proche on a notre classe date en public nos trois données membres le constructeur donc on s’aperçoit qu’effectivement c’est une procédure très particulière ce que c’est une procédure qui ne rend rien même pas void donc il faut pas écrire vridi siens donc ici on a d’autres constructeurs qui ne prend pas de paramètres donc c’est celui par défaut et qui met le 1er janvier mais 190 dont la date et puis on a le deuxième constructeur qui prend les trois paramètres et qui infecte j à jour m à moi et à année et enfin le destructeur qui fait un c est juste le message informatif de longue date a été détruite et le reste de la classe c comme avant dans le programme principal on va être capable de créer un objet de la classe date en passant par le constructeur par défaut en écrivant tout simplement date une date et on va être capable d’appeler le deuxième constructeur celui qu’il ya des paramètres en écrivant date autre date et là entre parenthèses on va mettre les paramètres donc ici trois entier de 2 et 2000 attention dans le problème principal si vous voulez appeler le constructeur de dates par défaut et que le l’objet que vous créez vous voulez l’appeler une date il ne faut pas écrire date une date parenthèse avec rien dedans point virgule on pourrait imaginer que ça fonctionne que ces sacs sa fin que ça appelle le constructeur par défaut qui n’a aucun paramètre mais c’est pas que ça que ça fait si vous écrivez ça ce que ça fait c’est que ça va déclarer une nouvelle fonction qui s’appelle une date qui prend pas de paramètres et qui rend une instance de la classe date ça ne fait pas du tout appel aux constructeurs c’est que ça déclare une nouvelle fonction de ce qu’ils firent on sait bien c’est bien comme ça qu’on l’écrirai si on voulait faire ça donc effectivement ici pour rappeler le constructeur par défaut qui n’a pas de paramètres il faut pas mettre les parenthèses d’accord c’est comme ça qu’on indique que c’est celui par défaut qu’on veut appeler il faut pas du tout m de parenthèse rien lemay casino ya des mécanismes associés à ce constructeur par défaut il faut s’apercevoir que s’il n’y a pas de constructeur qui est spécifique dans la classe aucun on est d’accord on l’a dit tout à l’heure il ya un compilateur le compilateur considère que la classe un constructeur par défaut qui existe toujours toujours qui a pas d’argument qui a pas de paramètres et qui fait rien qui est vide le coeur le corps de la fonction et vida d’accord donc ça ça existe toujours par défaut si vous ne spécifié pas votre constructeur vous même par contre à partir du moment où vous créez votre propre constructeurs donc appartement vous avez ajouté vous même un constructeur à la classe que ce soit le même constructeur a reçu par défaut qui prend pas tard à m ou un autre constructeur qui lui prend des paramètres alors le constructeur par défaut du compilateur n’existe plus et ne vous ne pouvez pas l’appeler d’accord donc ça veut dire qu’à partir du moment où vous avez créé vous même un constructeur il faut absolument que toutes les créations d’objets passe par ce constructeur petit exemple ici avec la classe date comme all connaît en imaginant qu’on a qu’un seul constructeur celui qui prend les trois paramètres jm et a le même que tout à l’heure et qu’on n’a pas spécifié nous le constructeur qui ne prend aucun paramètre alors à ce moment là il ne sera plus possible de créer un objet avec la première instruction qui est juste date une date parce que ça voudrait dire que j’appelle le constructeur par défaut sans paramètres mais il n’existe plus puisque vous en avez créé vous donc ça ça marche cette première ligne cette date une date tous courent marchent seulement 6 ou bien vous n’avez aucun constructeur et du coup c’est celui par défaut qui est utilisée ou bien vous avez vous même spécifié le constructeur qui ne prend aucun paramètre comme on l’a fait juste vent par contre la deuxième ligne sud qui utilise évidemment le constructeur avec les trois paramètres celui-là il marche évidemment toujours alors une fois qu’on a créé un objet souvent on a envie de pouvoir lui donner une valeur d’affecter directement quelque chose dans cet objet d’accord assez souvent on a envie de créer un objet à partir du contenu d’un autre objet ont offert une copie d’accords donc on pourrait imaginer on voudrait l’écrire comme c’est écrit juste en dessous en écrivant quatre autres dates égale une date évidemment l’objet une date étant déjà créé au dessus quelque part et on voudrait évidemment que le contenu de l’objet une date soit recopier dans le contenu de l’objet autre date et puis on pourrait imaginer également vouloir le faire directement à partir du constructeur avec avec un paramètre qui serait un paramètre du type date et ben en fait ces deux lignes la c2 instruction là ce sont exactement les mêmes syntaxiquement c c++ de les interpréter exactement de la même manière est ce que ça va faire c’est que ça va faire un appel à un autre constructeur particulier qu’on appelle le constructeur par copie par défaut il existe également comme les autres donc par défaut cette création par copie donc ce copil et les deux des membres d’un objet vers l’autre donc en gros ça prend toutes les deux nées membres du l’objet qui est à droite là et ça les recopie dans l’autre objet quel que soit le type de la donne est membre qu’on est en train de copier donc ça ça veut dire que s’il ya des données membres qui sont des pointeurs alors ce qui va être recopier c’est bien le pointeur c’est bien l’adresse mémoire qui est stocké dans le pointeur donc ça ça veut dire que les choses qui sont pointés ne sont pas elles recopier ne sont pas dupliquer ça veut juste dire que l’adresse mémoire et vous copier d’un objet à l’autre c’est rarement ce qu’on a envie qui se passe en pratique imaginons le cas suivant en dessous là où en plus de nos trois données membres entière jour moyenne et on a une quatrième donné membres qu’ils appellent siècle qui est un pointeur sur entier alors à ce moment-là utiliser le constructeur par copie par défaut va consister à copier jours de la date qui à droite dans la date qui à gauche mois et années et siècle de la même manière vous ça veut dire que l’adresse qui est dans ici autre date ou un siècle va être finalement la même adresse que l’adresse qui est dans une date point siècle celle que l’entier qui est pointée par cette adresse l’année par copier donc ça ça veut dire que si vous changez le siècle de l’une des deux dates et ben ça va aussi changer le siècle de l’autre date essart en général on le veut pas du coup ça veut dire que dans ces cas là on ne veut pas utiliser le constructeur par copie par défaut on va vouloir faire notre propre constructeur par copie donc c’est ce qu’on fait maintenant comment est ce qu’on est capable de spécifier notre propre constructeur par copie qui est en général utilisé lorsque on a des données membres qui sont des pointeurs donc le programmeur peut spécifier lui même ce constructeur il faut que du coup ça suive là la syntaxe suivante qui est le nom de la classe pour être comme étant le nom du constructeur parce que ça reste un constructeur donc son nom c’est le nom de la classe et donc c’est juste le paramètre qui diffère des autres pour que ce soit un constructeur par copie il faut que le paramètre soit une référence constante à un objet de la classe un autre objet de la classe d’accord donc le paramètre est une référence sur l’objet à copier et le programmeur doit donner les instructions pour faire cette copie petit exemple sur le sur ce qu’on vient de voir avec date avec un une deux des membres siècle qui est un pointeur sur un entier on a notre conduite non plus imaginer notre constructeur normale qui ne prend que 3 que trois de ses membres qui va remplir par exemple la donne est membre siècle automatiquement et puis on a notre notre constructeur par copie qui prend donc une référence constante à une date on a notre données membres jour qui elle fonctionne de manière relativement normale ou la copie du de la donne est membre jour 2d et recopié dans jour de la même manière la donne est membre mois du paramètre des et recopié dans la donnée membres mois de l’instance qu’on a dans l’objet qu’on est en train de créer les pareil pour année par contre pour siècle on ne peut pas le faire on peut pas faire siècle légale des points siècle parce que si on faisait ça on copierait l’adresse mémoire qui est dans siècle et donc les deux siècles et de pointer siècle pointerait sur le même entier et donc du coup évidemment changé linge changerait l’autre ce qu’on ne veut pas donc du coup on veut absolument que siècle soit une nouvelle adresse mémoire accor qui pointe sur un entier qui vaut la même chose que l’entier qui est dans tes donc du coup pour faire ça on est obligé de faire un new de créer une nouvelle adresse mémoire d’accord qui sera spécifique à cet objet là qu’on est en train de créer donc on est obligé de faire un new ints et la valeur qu’on veut donner à cette entier qu’on est en train de créer c’est la même valeur que ce qu’il ya dans des points siècle donc des points siècle c’est l’adresse mémoire de lantier qui est dans des mais nous ce qu’on veut c’est récupérer lanthier qui est le siècle donc il faut du coup des références et avec l’étoile des points siècle ça ça nous donne le siècle de la date d s’est passé en paramètres de la création de lantier d’accord donc c’est ce qui va être mis sur le tas dans la case mémoire qu’on est en train d’allouer et le new line ils ne retournent l’adresse mémoire de cette nouvelle case où il ya notre entier qu’on va affecter à notre donné membres siècle qui serait bien du coup une nouvelle adresse mémoire sur un siècle qui sera le même qui aura la même le même rentiers qui sera la même valeur que le siècle qui est dans des le paramètre haute et comment est-ce qu’on utilise ça du coup dans le programme principal on a notre notre première date ce qu’on appelle une date qui va par exemple utiliser le premier constructeur là que le avec les trois paramètres et puis maintenant on est capable d’utiliser notre deuxième qui est par notre deuxième constructeur celui par copie qui va considère écrire juste date autre date est entre parenthèses et la date qu’on veut recopier donc le 02/02/2010 il est la valeur 2 2 et 2000 voire être copiés de manière directe par contre le siècle qui correspond à la valeur de près donc au siècle qui est dans une date on va créer une nouvelle adresse mémoire un nouveau pointer pour pouvoir stocker une copie de la valeur du siècle de 7,2 cette date voilà donc ça c’est le fonctionnement du constructeur par copie encore quelques mots sur les constructeurs et destructeur la majorité du temps je vous ai déjà dit dans les constructeurs qui contiennent en particulier des paramètres les valeurs qui sont donnés aux paramètres sont simplement recopié dans les membres qui corresponde c’est les constructeurs c’est en général pas très difficile à écrire ça consiste relativement simplement injuste car de la recopie de paramètres vers les données membres on peut les initialisés directement avant même d’exécuter dont rentrer dans le code du constructeur et ça ça permet c’est une syntaxe notations qui permet d’appeler des constructeurs à paramètres pour des objets qui serait d d des objets des données membres qui seraient eux-mêmes des objets donc par exemple on a encore une fois nos trois no 3 données membres entière jour moyenne et on a notre pointer sur entier qui est sec et on imagine qu’on a encore une cinquième donné membres qui est un objet de la classe système temporel qui est une classe qui est définie ailleurs dans notre code alors on voit évidemment lorsqu’on va créer un objet de la classe date on va vouloir donner une valeur correcte à la fois à jour moyen année mais aussi à siècle et aussi à 6 notre système temporel on imagine qu’on est en train d’écrire notre constructeur qui prend trois paramètres jm et à de manière directe on peut directement affectés j 1 jour m à moi et à année avec cette syntaxe là qui consiste à écrire juste après les paramètres deux points le nom de la donne est membre entre parenthèses le paramètre qui utilisés pour construire ce membre etc etc évidemment cette chose là ça ça fait appel aux constructeurs de la classe du type jour qui prend un objet du type j en part à m donc ça ça demande à ce que la classe inc est un constructeur qui prend 1 int ce que j c 1 int en paramètre alors ça tombe bien c’est le cas il existe bien dans la classe inc un constructeur qui prend 1 int enfin en paramètre est ici on va du coup maintenant être capable de créer notre objet 6 à partir d’un constructeur qui prendrait par exemple quelque chose qui est du type hince puisque j plan le plus c’est l’addition à entre 2 entier on imagine là ça n’a pas trop de sens 1 mais bon c’est pas tout c’est pas important pour pour l’exercice que l’on fait la somme des trois sentiers jour mois et années que ça ça nous donne un nouvel entier que c’est c’est ce qui sert de base pour créer notre objet système temporel et on imagine que ça fonctionne comme ça par contre ça écrire ça donc 6 entre parenthèses j + m plus à ça suppose pour que ça fonctionne il faut que la classe système temporel est un constructeur qui prend 1 int en paramètres on peut imaginer qu’on a ça par contre pour notre données membres siècle ça y’a pas le choix on est obligé d’écrire une une vraie instruction avec le vrai nous int donc on peut pas dans la même syntaxe ici dans la même ligne initialisé siècle parce que si on est obligé de le mettre dans une vraie instructions à part entière donc celui ci et a traité à part voilà donc cette notation permet de faire des appels à des constructeurs de données membres pour pouvoir les initialisés dans le constructeur parfois il est assez utile d’être capable de récupérer sur quelle instance on est en train de manipuler dans une dans une fonction membres donc ça va servir pour que pour qu’une fonction puisse par exemple leur tournée en résultats on veut retourner sûr qu’elle a sur quel objet je viens de changer les choses et ça peut aussi être utilisé pour lever des ambiguïtés donc pour être capable de récupérer cette adresse mémoire de l’objet qu’on est en train de manipuler on peut utiliser le mot clé this anglais dhs et ça ça va directement nous récupérer le pointeur sur les objets manipulés donc imaginons ici une fonction membres de la classe date qui prend un entier jour en paramètres et qui retourne l’adresse d’une date et qui ajoute le nombre de jours à la date courante ici on a fait quelque chose qui est à éviter c’est qu’on a donné le nom jour o parra m alors que jours c’est déjà le nom d’une des deux n’est membre donc ça veut dire qu’il va y avoir d’ambiguïté dans la fonction ajoute jours lorsqu’on va écrire jour tout court il va y avoir d’ambiguïté entre le jour qui correspond paramètres et le jour qui correspond à la donne est membre pour lever l’ambiguïté on peut utiliser le mot clé this on écrira this flèche jour flèche parce que 10 c’est l’adresse mémoire de l’objet donc il faut le déférence et enfin il faut des références et plus faire un point pour obtenir le jour donc faire la flèche donc six flèches jours va identifier de manière non ambiguë le fait que c’est la donnée membres jour alors que le jour tout court avec rien devant ce sera le paramètre jours donc ça ça a bien faire ce qu’on veut c’est à dire incrémenté notre données membres jour de la quantité de jour donné en paramètres si on n’avait pas mis le display ch si on avait écrit jour plus égale jour ça aurait modifié de manière locale notre paramètres jour ce qui évidemment complètement inutile et on imagine que cette fonction membres son but donc en plus de faire l’un crémant c’est de retourner un pointeur sur l’objet convient de modifier alors on peut par exemple faire un routeur n’zi ce qui va retourner le pointeur de l’objet qu’on a retourné on verra on peut-être que vous vouliez pas forcément bien l’utilité de cette chose là on verra une utilité bientôt petit rappel sur sur les passages des paramètres encore une fois c’est pas la première fois que vous le voyez ça vous vous rappelez que pour passer un paramètre en mode donné si c’était un objet primitif on va juste écrire le type et le x parce que c’est pas très grave si on recopie l’objet puisqu’il est tout petit puisque les types de métiers sont tout petits en mémoire et puis si c’est pas un objet primitif si c’est un objet de vaud de votre classe avoue typiquement alors on est obligé de passer par référence mais comme il est passé en mode de néons mes inconstances par contre si l’objet n’est pas à passer en mode donné mais un maître denis résultats alors on ne met pas le contenu est capable de modifier donc ça c’est le sait ce que vous connaissez déjà du fonctionnement du mot-clé constat il y à un autre fonctionnement un autre une autre utilité pour ce mot-clé const il sert aussi à indiquer si une fonction membre a le droit de modifier les deux des membres de la classe et s’est vérifié la compilation donc si c’est pas le cas ça vous fait une erreur de compilation donc par exemple ici dans notre classe date avec saisir est affiché il faut absolument spécifié que affiché est constant et saisir ne l’est pas effectivement le but même de la procédure saisir c’est de modifier les données membres c’est de les saisir au clavier puis leur donner une nouvelle valeur donc forcément saisir a le droit de modifier les données membres jour mois et années du coup il faut que saisir ne soit pas construit on est fille pas le mot clé const par contre affiché lui son but c’est uniquement d’afficher à l’écran la valeur typiquement des données membres donc du coup lui il ne modifie pas jour moyenne et il fais que lire le contenu de jours moyenne et du coup il faut absolument spécifié que affiché est constant et n’a pas le droit de modifier jour moyenne et puisque faire de l’affichage n’est pas supposé modifier les choses donc le mot clé consiste à la permet d’indiquer si une fonction a le droit de modifier les données membres ou pas et ce mot clé il faut le mettre entre eux la fermeture de parenthèse des paramètres et le début des accolades du corps de la fonction d’accords donc entre les paramètres et le corps de la fonction qui est différent dans l’endroit où l’on met le constat pour les paramètres le conse pour les paramètres c’est à l’intérieur des parenthèses avec les paramètres il existe également la possibilité de donner des paramètres par défaut à vos fonctions d’accord en fait c’était vrai déjà depuis le début donc il n’y a pas eu besoin d’attendre qu’on fasse des fonctions membres de classe pour que vous ayez la possibilité de donner des paramètres par défaut avons fonctions en fait ça existait déjà depuis début peut-être on vous l’a pas dit peut-être que vous le saviez mais on est capable de donner des pas des valeurs par défaut à tous les paramètres de tes fonctions donc qu’elles soient des fautes et globale des locales ou des fonctions de défendre des fonctions membres pour spécifier un paramètre par défaut on utilise notation qui consiste à mettre le égal et la valeur par défaut à donner aux paramètres dans l’en-tête de la fonction évidemment juste à côté du paramètre entre veut donner une valeur par défaut donc par exemple dans notre classe date toujours on peut imaginer une procédure membres incrémenté qui prend trois paramètres nb jours nb mois et nb années et qui chacun ont leur valeur par défaut qui sont un donc par défaut la valeur du paramètre nbi jour vaut un don king nb jour égal 1 par défaut également nber moi ça vaut 1 et par défaut également np année ça vaut 1 le but de incrémenté c’est d’incrémenter chacun des jours moyenne et par le nombre qu’on a donnée en paramètres alors c’est pas juste faire un plus égale de chacun des trois parce qu’il faut aussi vérifier que évidemment lorsqu’on a rajouté un certain nombre de jours il faut pas changer le mois voilà si on a dépassé 30 30 mois 30 jours dans le mois peut-être qu’il faut basculer dans le mois prochain et c’est que ça c’est pas y’a pas toutes les vérifications toutes les mises à jour qui sont faites mais c’est pas c’est pas ce qui est important ici donc comment est-ce qu’on peut utiliser cette cette procédure membres incrémenté et surtout ses valeurs de paramètres par défaut on va d’abord créer une date en utilisant le constructeur on à paris le constructeur ici mais on imagine qu’on a le constructeur qui prend les trois paramètres le jour j aime allah jour moyenne et pour commencer le avec une date qui au 1er janvier 2000 est au courant on est capable directement d’appeler incrémenté sans aucun paramètre si on appelle ici incrémenté sans aucun paramètre dans les parenthèses et va automatiquement le compilateur va s’apercevoir que ah bah oui ça veut dire que je dois utiliser les trois valeurs par défaut pour ces trois paramètres la donc le 1 le 1 et le 1 donc ici ça va faire incrémenté deux le nombre de jours va être incrémenté parrain le mois va être agrémenté de l’ain et l’année va être agrémenté de 1 si on utilise incrémenté en spécifiant on dit videmment directement à la pelle les trois paramètres du coup ça veut dire qu’ aucune des trois valeurs par défaut va être utilisé mais ça va juste utiliser les trois valeurs 2,5 et 3 d’accord évidemment ici ce qui est intéressant c’est qu’on va pouvoir utiliser seulement une partie des des paramètres par défaut est spécifié ce qu’on a envie de spécifier donc si par exemple on écrit une date point incrémenté avec 2 ça veut dire qu’on va utiliser le 2 comme étant la valeur pour le nb jour le premier des paramètres par défaut avec des valeurs par défaut et ensuite pour nber mois et nb année on va utiliser leur valeur par défaut qui sont 1 et 1 de la même manière si on ap si on utilise deux paramètres 2 et 5 on va utiliser le 2 pour nb jour et le 5 pour nb mois et on va utiliser la valeur par défaut de 1 pour nba n’est par contre il n’est pas possible d’utiliser le nb jour 2 1 par défaut et un nb mois ou un mba n’est qu’ils ne seraient pas par défaut qui serait donnée parce qu’il n’y a pas moyen d’écrire quelque chose du genre rien virgule 5,3 en espérant que ça va faire l’appel avec 1 5 et 3 non ça c’est pas syntaxiquement correct en c++ donc on peut pas le faire donc on est obligé de les faire dans un certain ordre donc on est un petit peu limité dans l’utilisation des valeurs par défaut donc du coup ça veut dire que les paramètres par défaut doivent être les derniers paramètres dans l’en tête sinon va être on va être bloquée en fait on va rarement être capable de les utiliser donc par exemple ici si j’ai deux versions de incrémenté une version qui dit que j’ai une valeur par défaut pour nb jour qui vaut 1 et je n’ai pas de valeur par défaut pour un des moyennes bene évidemment on peut mixer les deux on n’est pas obligé de donner des valeurs par défaut pour tous n’est pas pour tous nos paramètres et on a une autre version ou c’est cette fois ci il ya à la fois nb jours est à la fois nb moi qui ont des valeurs par défaut qui sont encore une fois un il n’ya que nba n’est qui n’a pas de valeur par défaut alors on peut pas d’accord parce qu’on n’aura pas moyens ce n’est pas valide ça fait carrément une erreur à la compilation d’accord parce que y’a pas moyen de à la fois dire ok est ce que c’est le nber jour par défaut que j’ai utilisées et ensuite une des mois et des mois et des années je venais spécifié parce que dans quels cas ça voudrait dire qu’on ferait quelque chose qui est du style rien virgules et puis 2-2 entier et on l’a vu tout à l’heure c’était pas possible et pareil pour la deuxième version donc ça veut dire que il faut absolument que les paramètres par défaut soit le plus à droite dans la liste des paramètres dans l’en-tête de la fonction d’accords ensuite il ya une deuxième règle à suivre qui est le premier des paramètres par défaut parmi tous tous ceux qui sont par défaut donc parmi tous ceux qui sont à droite le premier des paramètres par défaut doit être celui que l’utilisateur le plus de chances d’avoir à spécifier lui-même n’accorde plus de chances de ne pas utiliser comme étant par défaut donc ceci afin de minimiser les risques qu’il y ait besoin de spécifier un paramètre alors que c’est exactement la même valeur que celui que la valeur par défaut ce qui serait dommage donc on imagine ici là la version ou incrémenté prend lanthier nb jour en prob en premier paramètre qui n’a pas de valeur par défaut et nb mois et années qui entraîne donc ce qui est s’ils respectent notre première contrainte qui nous dit qu’il faut mettre les paramètres par défaut le plus à droite donc derrière par contre ici on a à la fois nb moi il ya une des années qu’ils sont tous les deux avec des valeurs par défaut qui sont sains et un à l’utilisation imaginons la situation suivante où on a notre date on peut évidemment on ne peut pas faire la paix la incrémenté sans aucun paramètre puisque nber jour on lui a pas donné de valeurs par défaut donc ça veut dire qu’on n’a pas le droit de l’utiliser sans aucun sens aucune valeur donc évidemment à la compilation ce sera impossible de compiler le code icici incrémenté n’a aucun paramètre lors de l’appel puisque celui ci il faut au moins spécifier une bille jours si on fait quelque chose du genre 2 5 3 a pas de problème a encore une fois un sarrau heureusement on va utiliser les valeurs qu’on donne et puis ça va d’exécuter avec 2 5 3 si par exemple on l’utilisé avec uniquement la valeur 2 alors ça veut dire que on va utiliser la barre 2 pour un séjour et les deux valeurs par défaut un et un pour les valeurs de nb moyettes ban et ça c’était exactement ce qu’on voulait commence comme ans comment ça marche et ensuite ici on peut imaginer le cas où on veut appeler 2 1 et 5 donc on va appeler avec l’un des jours qui vaut deux nb année qui vaut cinq et on voudrait appeler avec un béné qui vaut un qui est la valeur par défaut alors c’est peut-être un petit peu dommage parce que s’ils ont effectivement c’est le genre de chose qui ait fait assez souvent de faire incrémenté avec une valeur la valeur 1 puis une autre valeur et là c’est dommage d’avoir à réécrire la valeur un pur nb mois puisque c’est simple c’est sale utilisé par défaut donc si finalement il y avait plus de chances que nber mois soit toujours à 1 et que c’est nba mais qui changent assez régulièrement eh bien il vaut mieux que n des mois soit en troisième paramètre est une des années on deuxième paramètre voilà donc c’est juste pour un petit peu optimisé les appels

Laisser un commentaire

creer-un-site-internet-pro.com© All rights reserved. Mentions legales.