C++ : LES BASES
Apparu au début des années 90 le langage C++ est actuellement l'un des plus Le but de ce cours est de présenter la syntaxe de base du langage C++.
Cours de C++
2 ????. 2005 ?. ? Programme: . . . s'adresse `a une machine ! Page 5. Introduction. Le langage C++.
C++ Master 1 IM
Une introduction au langage C++ ainsi qu'au paradigme objet. Comme dans la plupart des cours de programmation on commence.
Programmation C++ (débutant)/Notions de base
Programmation C++ (débutant)/Notions de base. Le cours du chapitre 1 : Notions de base. Les langages de programmation. Le C++ est un langage de
Apprendre le C++.pdf
Cours et exercices en UML 2 avec PHP Java
La programmation en C++ moderne
6 ???. 2021 ?. VI.1. Index. 615. Bienvenue dans ce cours sur l'apprentissage de la programmation avec le langage C++. Vous débutez complètement et n'avez ...
Comprendre et utiliser C++ pour programmer objets
Cours rédigé et enseigné par un professeur francophone. base du langage C++ (types élémentaires schémas itératifs et conditionnels
Cours Langage C++ : Héritage et polymorphisme Programmation
Cours Langage C++ : Héritage et polymorphisme. Programmation Orienté Objet. Thierry Vaira. BTS IRIS Avignon tvaira@free.fr.
COURS PROGRAMMATION C++ TAHRAOUI Souad Chlef za3
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 apprécie ses performances et ses
Cours Langage C/C++ Mémoire et allocation dynamique
Cours Langage C/C++ Les fonctions malloc et free ainsi que les opérateurs du langage. C++ new et delete permettent
The C++ Language Tutorial - C++ Users
cplusplus com C++ Language Tutorial Written by: Juan Soulié Last revision: June 2007 Available online at: http://www cplusplus com/doc/tutorial/ The online version
Searches related to langage c+ cours pdf PDF
Chapter 1 Introduction This textbook was written with two primary objectives The ?rst is to introduce the C program-ming language C is a practical and still-current software tool; it remains one of the most popular
Qui a inventé le langage C ?
Mais ses qualités opérationnelles l’ont très vite fait adopter par une large communauté de programmeurs. Une première définition de ce langage est apparue en 1978 avec l’ouvrage de Kernighan et Ritchie The C programming language.
Quelle est la valeur entière autorisée par le langage C ?
A priori, c’est le seul cas autorisé par le langage C (du moins, tant que l’on ne procède pas à des conversions explicites). Une exception a toutefois lieu en ce qui concerne la valeur entière 0, ainsi que pour le type générique void * dont nous parlerons un peu plus loin.
Comment interpréter une instruction en C ?
Elle sera interprétée comme : k = (i = 5) Autrement dit, elle affectera à i la valeur 5 puis elle affectera à k la valeur de l’expression i = 5, c’est-à-dire 5. En fait, en C, les notions d’expression et d’instruction sont étroitement liées puisque la principale instruction de ce langage est une expression terminée par un point-virgule.
Quels sont les conséquences d’un code de format en désaccord avec le type de l’expression ?
a) code de format en désaccord avec le type de l’expression Lorsque le code de format, bien qu’erroné, correspond à une information de même taille (c’est-à-dire occupant la même place en mémoire) que celle relative au type de l’expression, les conséquences de l’erreur se limitent à une mauvaise interprétation de l’expression.
Cours Langage C++ : Héritage et polymorphisme
Programmation Orienté Objet
Thierry Vaira
BTS IRIS Avignon
tvaira@free.fr?v0.1Sommaire
1Classes et objets
2L"héritage
3Polymorphisme
4Classe abstraite
5Transtypage
tv (BTS IRIS Avignon)Cours C/C++tvaira@free.fr?v0.1 2 / 37Rappels
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 / 37Rappels
Classifier
Regrouper des objets suivants des critères de ressemblance s"appelleclasser(classifier) :La classe est unedescription abstraite d"un ensemble d"objetstv (BTS IRIS Avignon)Cours C/C++tvaira@free.fr?v0.1 4 / 37
Rappels
État et comportement
Un objet posséde uneidentitéqui permet de distinguer un objet d"unautre objet (son nom, une adresse mémoire).Un objet posséde unétat(les valeurs contenues dans les attributs
propres à cet objet).Un objet posséde uncomportement(l"utilisation de ses méthodes lui fera changer d"état). tv (BTS IRIS Avignon)Cours C/C++tvaira@free.fr?v0.1 5 / 37Rappels
Droits d"accès aux membres
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 "importeoù dans le programme. - Accèsprivate:seule une fonction memb rede la même classe A peut utiliser ce membre; il est invisible de l"extérieur de A. - Accèsprotected:ce memb rep eutêtre utilisé pa rune fonction 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. tv (BTS IRIS Avignon)Cours C/C++tvaira@free.fr?v0.1 6 / 37L"héritage
Définition
L"héritage(ouspécialisation, oudérivation) permet d"ajouter des propriétés à une classe existante pour en obtenir une nouvelle plus précise.L"idée est : "un Best unAavecdes choses en plus". Exemple : Un étudiantestune personne, et a donc un nom (et un prénom, ...). De plus, il a un numéro INE. tv (BTS IRIS Avignon)Cours C/C++tvaira@free.fr?v0.1 7 / 37L"héritage
Personne
est la classe parente ou mère deEtudiant
en anglais superclass classPersonne {
private :stringnom; public :stringgetNom()const{returnnom; }Etudiant
est la classe fille ou dérivée dePersonne
Etudiant
hérite ou descend dePersonne
classEtudiant :
publicPersonne {
private :stringine; public :stringgetINE()const{returnine; }Personne unePersonne; Etudiant unEtudiant;
unePersonne.getNom();//légal : unePersonne est une Personne unEtudiant.getINE();//légal : unEtudiant est un Etudiant unEtudiant.getNom();//légal : unEtudiant est une Personne ( parhéritage ) unePersonne.getINE();//illégal : unePersonne n "estpas un Etudiant ( erreur:" classPersonne
has no member named getINE tv (BTS IRIS Avignon)Cours C/C++tvaira@free.fr?v0.1 8 / 37L"héritage
Types d"héritage
Remarque : Les constructeurs, le destructeur, de même que l"opérateur= de la classe de base ne sont pas hérités dans la classe dérivée. tv (BTS IRIS Avignon)Cours C/C++tvaira@free.fr?v0.1 9 / 37L"héritage
Conversion automatique (1/2)
Si B hérite de A, alors toutes les instances de B sont aussi des instances de A, et il est donc possible de faire :Personne unePersonne; Etudiant unEtudiant; unePersonne = unEtudiant;//Ok !Propriété
conservée lorsqu on utilise des pointeurs Personne *pUnePersonne; Etudiant *pUnEtudiant = &unEtudiant; pUnePersonne = pUnEtudiant;//pointer sur un B c "estavant tout pointer sur un AÉvidement
l inverse n est pas vrai unEtudiant = unePersonne;//ERREUR !Pareil
pour les pointeurs pUnePersonne = &unePersonne; pUnEtudiant = pUnePersonne;//ERREUR ! pointer sur un A n est pas pointer sur un B tv (BTS IRIS Avignon)Cours C/C++tvaira@free.fr?v0.1 10 / 37L"héritage
Conversion automatique (2/2)
Conclusion :Traiter un type dérivé comme s"il était son type de base est appelétranstypage ascendantou surtypage (upcasting). A l"opposé, letranstypage descendant(downcast) pose un problème particulier car leur vérification n"est possible qu"à l"exécution. Il nécessitel"utilisation d"opérateur decast:dynamic_cast(vu plus tard).tv (BTS IRIS Avignon)Cours C/C++tvaira@free.fr?v0.1 11 / 37
L"héritage
Principes (1/2)
L"héritage permet :
la réutilisation du code déjà écrit l"ajout de nouvelles fonctionnalités la modification d"un comportement existant (redéfinition) Remarque : la suppression de membres en utilisation l"héritage privé (private).tv (BTS IRIS Avignon)Cours C/C++tvaira@free.fr?v0.1 12 / 37L"héritage
Principes (2/2)
Classe
de base classPersonne {
private :stringnom; public stringgetNom()const; voidafficher()const{ cout << nom << endl; }Classe
dérivée classEtudiant :
publicPersonne {
private :stringine; public stringgetINE()const;//ajout de nouvelles fonctionnalités voidafficher()const// modification d "uncomportement existant Personne::afficher();//réutilisation du code déjà écrit cout << ine << endl; tv (BTS IRIS Avignon)Cours C/C++tvaira@free.fr?v0.1 13 / 37L"héritage
Notion de redéfinition
Il ne faut pas mélanger la redéfinition et la surdéfinition : Unesurdéfinition ou surcharge (overloading)permetd"utiliser plusieurs méthodes qui portent le même nom au sein d"unemême classe avec une signature différente.Uneredéfinition (overriding)permetde fournir une nouvelle
quotesdbs_dbs13.pdfusesText_19[PDF] apprendre latin autodidacte
[PDF] aprender latin pdf
[PDF] cours de francais pour etranger bordeaux gratuit
[PDF] cours de francais pour etranger metz
[PDF] cours de français gratuit vaud
[PDF] alliance francaise bordeaux aquitaine
[PDF] cours de français pour étrangers metz
[PDF] cours de français lausanne pas cher
[PDF] association cours de français bordeaux
[PDF] cours de français gratuit lausanne
[PDF] cours de grec biblique pdf
[PDF] initiation au grec du nouveau testament pdf
[PDF] apprendre grec facilement
[PDF] manuel de grec biblique