[PDF] Cours Langage C/C++ - Thierry VAIRA Homepage - Free





Previous PDF Next PDF



Programmez avec le langage C++

10 nov. 2012 Le langage C++ est un des langages les plus célèbres au monde. Très utilisé notamment dans le secteur des jeux vidéo qui.



Programmez avec le langage C++

7 oct. 2013 Dans ce chapitre je vais tenter de répondre à toutes ces questions. N'oubliez pas : c'est un cours pour débutants.



Apprendre à programmer avec Python 3 - INFOREF

les mécanismes de base du langage lui-même. Nous laisserons donc le C/C++ pour plus tard. Pour nos débuts dans l'étude de la programmation il nous semble 



Cours Langage C++ : Héritage et polymorphisme Programmation

Remarque : les destructeurs sont appelés dans l'ordre inverse. tv (BTS IRIS Avignon). Cours C/C++ tvaira@free.fr v0.1.



Apprendre le C++.pdf

Programmer en Java (Java 5 et 6). Programmer en langage C. Avec exercices corrigés. ... 2.1 Les différents types usuels d'entiers prévus par C++ .



Programmation C++ (débutant)/Les pointeurs

Nous étudierons dans ce chapitre les tableaux dynamiques dont la taille peut être quelconque et variable au cours du temps. Ce sera l'occasion d'étudier l' 



Comprendre et utiliser C++ pour programmer objets

base du langage C++ (types élémentaires schémas itératifs et conditionnels



Langage C++ et calcul scientifique

16 déc. 2013 Al- ternant algorithmes et applications les programmes sont directement présentés en langage C++. Ils sont sous forme concise et claire



Algorithmique & programmation en langage C - vol.1 - Archive

1 fév. 2019 Un algorithme est généralement exprimé dans un langage informel ... L'écriture de programmes en C nécessite de comprendre un grand nombre ...



Cours Langage C/C++ - Thierry VAIRA Homepage - Free

Les classes sont les éléments de base de la programmation orientée objet (POO) en C++. Dans une classe on réunit : - des données variables : les données 

Cours Langage C/C++ - Classes et objets

Programmation Orienté Objet

Thierry Vaira

BTS IRIS Avignon

tvaira@free.fr?v0.1

Sommaire

1Classes et objets

2Les objets constants

3Surcharge des opérateurs

4L"héritage

5Les exceptions

6Polymorphisme

7Transtypage

tv (BTS IRIS Avignon)Cours C/C++tvaira@free.fr?v0.1 2 / 69

Classes et objets

Classes et objets

Les classes sont les éléments de base de laprogrammation orientée objet (POO)en C++. Dans une classe, on réunit : - des données variables : les données memb res,ou les attributsde la classe. - des fonctions :

les fonctions memb res,ou les méthodesde la classe.Une classeAapporte un nouveau typeAajouté aux types (pré)définis

de base par C++.Une variableacréée à partir du type de classeAest appeléeinstance (ouobjet) de la classe A.Exemple (non compilable*) : class A; //déclare une classe A (* car elle n "estpas définie )

A a1;//instancie un objet a1 de type A

A a2;//crée une instance a2 de type A tv (BTS IRIS Avignon)Cours C/C++tvaira@free.fr?v0.1 3 / 69

Classes et objets

État et comportement

Une classe sedéclare dans un fichier.h. La déclaration permet de connaître les types des choses constituant la classe, et ainsi de l"utiliser.Une classe sedéfinit dans un fichier.ccou.cpp. La définition

permettra de fabriquer les choses constituant la classe.Un objet possédera uneidentitéqui permet de distinguer un objet

d"un autre objet (son nom, une adresse mémoire).Un objet possédera unétat(les valeurs contenues dans les attributs

propres à cet objet).Un objet possédera uncomportement(l"utilisation de ses méthodes lui fera changer d"état). tv (BTS IRIS Avignon)Cours C/C++tvaira@free.fr?v0.1 4 / 69

Classes et objets

Droits d"accès aux membres (1/2)

Les droits d"accès aux membres d"une classe concernent aussi bien les méthodes que les attributs.En C++, on dispose des droits d"accès suivants : - Accèspublic:on p eututiliser le memb rede n"imp orteoù dans le p rogramme. - Accèsprivate:seule une fonction memb rede la mêm eclasse A p eututiliser ce membre; il est invisible de l"extérieur de A. - Accèsprotected:ce memb rep eutêtre utilisé pa run efonction de cette même classe A, et pas ailleurs dans le programme (ressemble donc à private), mais il peut en plus être utilisé par une classe B qui hérite de A.Il existe une règle de POO qui précise queles attributs doivent être encapsulées dans la classepour éviter une utilisation extérieure. C"est une forme de protection permettant d"éviter une utilisation incorrecte ou non prévue par le programmeur de la classe. On appliquera ce principe en déclarant l"ensemble des attributs en private.tv (BTS IRIS Avignon)Cours C/C++tvaira@free.fr?v0.1 5 / 69

Classes et objets

Droits d"accès aux membres (2/2)

Si c"est nécessaire, l"accès aux attributs privés d"une classe se fera par l"intermédiaire de méthodes nommées desaccesseurs et manipulateurs. On a l"habitude de les nommerget()pour l"accès

en lecture etset()pour l"accès en écriture d"un attribut.Exemple (non compilable car les méthodes ne sont pas définies) :

class A private intx;//je suis un attribut privé de type int voidfoo();//je suis une méthode privée de nom foo public ://seulement des méthodes ici ( reglePOO ) intgetX();//je suis l "accesseurget de x ,je retourne sa valeur voidsetX(int);//je suis le manipulateur set de x ,je fixe sa valeur voidafficher();//je suis une autre méthode publique tv (BTS IRIS Avignon)Cours C/C++tvaira@free.fr?v0.1 6 / 69

Classes et objets

Constructeur

Un constructeur est chargé d"initialiser une instance (objet) de la classe.Il est appeléautomatiquement au moment de la créationde l"objet.Un constructeur est uneméthode qui porte toujours le même nom que la classe.Il existe quelques contraintes : Il peut avoir des paramètres, et des valeurs par défaut. Il peut y avoir plusieurs constructeurs pour une même classe.

Il n"a jamais de type de retour.

Il existe d"autres constructeurs : le constructeur par défaut et le constructeur de copie. tv (BTS IRIS Avignon)Cours C/C++tvaira@free.fr?v0.1 7 / 69

Classes et objets

Destructeur

Le destructeur est laméthode membre appelée lorsqu"une

instance (objet) de classe cesse d"exister en mémoire.Son rôle est delibérer toutes les ressources qui ont été acquises

lors de la construction(typiquement libérer la mémoire qui a été

allouée dynamiquement par cet objet).Un destructeur est uneméthode qui porte toujours le même nom

que la classe, précédé de "~".Il existe quelques contraintes :

Il ne possède aucun paramètre.

Il n"y en a qu"un et un seul.

Il n"a jamais de type de retour.

Voilà, on sait suffisamment de choses pour écrire notre première classe et instancier nos premiers objets. tv (BTS IRIS Avignon)Cours C/C++tvaira@free.fr?v0.1 8 / 69

Classes et objets

Déclaration d"une classePointdans un fichierpoint.h//Une classe apporte un nouveau type : ici un Point .C "estdonc un modèle pour les futurs objets de type

Point Mon type Point possède des caractéristiques des propriétés une coordonnée entière x et une coordonnée entière y Mon type point peut faire des choses des opérations il est capable d afficher ses coordonnées class Point private int_x, _y; public

Point(int,int);//je suis le constructeur

~Point();//je suis le destructeur intgetX(); voidsetX(int); intgetY(); voidsetY(int); voidafficher(); };tv (BTS IRIS Avignon)Cours C/C++tvaira@free.fr?v0.1 9 / 69

Classes et objets

Définition des membres de la classe Point dans un fichierpoint.cc#include< iostream>// j "utilisecout

include point h il me faut la déclaration de la classe Point using namespacestd;//utile ! je definis la méthode Point donc le constructeur ici de la classe Point pour que le compilateur comprenne et la trouve j utilise l opérateur de résolution de portée

Point::Point(intx,inty) {

cout << "Appel du constructeur Point : j"initialise les membres privés x et y" << endl; _x = x; _y = y;

Point::~Point() {

cout << "Appel du destructeur ~Point : j"ai rien à faire" << endl; intPoint::getX() { return_x; voidPoint::setX(intx) { _x = x; intPoint::getY() { return_y; voidPoint::setY(inty) { _y = y; voidPoint::afficher() { cout << _x << "," << _y << endl; }tv (BTS IRIS Avignon)Cours C/C++tvaira@free.fr?v0.1 10 / 69

Classes et objets

Un programme d"essai dans un fichiermain.cc#include< iostream>// j "utilisecout include point h il me faut la déclaration de la classe Point using namespacestd;//utile ! intmain() Point pointA(0,0);//j "instancieun objet pointA de type Point Point pointB(1,2);//ou je crée une instance pointB de type Point pointA.afficher();//j "appellela méthode publique afficher ()de l "objetpointA pointB.afficher();//chaque objet possède ses propres attributs pointB _y 1; interdit car l attribut _y est privé doncquotesdbs_dbs23.pdfusesText_29
[PDF] Programmez avec le langage C - Free

[PDF] Soins infirmiers fondaments généraux

[PDF] S 'entraîner ? taper plus vite au clavier - PC Astuces

[PDF] S entraîner ? taper plus vite au clavier - PC Astuces

[PDF] Découvrir le Terminal - Compétence Mac

[PDF] Initiation aux Systèmes d Informations Géographiques sous ARCGIS

[PDF] Initiation ? ArcGIS - ge-eauorg

[PDF] Anticiper les marchés avec les bougies japonaises - Bourse Direct

[PDF] Conjugaison arabe - de Ghalib al-Hakkak

[PDF] apprendre bien a faire la priere et a jeuner - La Porte Du Savoir

[PDF] apprendre ? tout dessiner - oskar edition

[PDF] Le dessin de portrait: Comment dessiner un visage? Première étape

[PDF] De nouveaux programmes - SNUipp-FSU 63

[PDF] Initiation ? Excel - LACL

[PDF] Apprendre Java en 154 minutes - Fichier-PDFfr