Introduction au langage C++



Documents pareils
Le langage C++ est un langage de programmation puissant, polyvalent, on serait presque tenté de dire universel, massivement utilisé dans l'industrie

wxwidgets dans un environnement Microsoft Windows

C++ COURS N 2 : CLASSES, DONNÉES ET FONCTIONS MEMBRES Classes et objets en C++ Membres d'une classe Spécification d'une classe Codage du comportement

TP1. Outils Java Eléments de correction

Le langage C. Séance n 4

Conventions d écriture et outils de mise au point

Tutoriel code::blocks

Programmation stochastique

DE L ALGORITHME AU PROGRAMME INTRO AU LANGAGE C 51

1. Développement embarqué. André KPOZEHOUE DOMAINES DE COMPETENCES CONNAISSANCES TECHNIQUES

Anne Tasso. Java. Le livre de. premier langage. 10 e édition. Avec 109 exercices corrigés. Groupe Eyrolles, , ISBN :

Initiation à JAVA et à la programmation objet.

Introduction à la programmation Travaux pratiques: séance d introduction INFO0201-1

Introduction à l héritage en C++

TP1 : Initiation à Java et Eclipse

Introduction à la programmation orientée objet, illustrée par le langage C++ Patrick Cégielski

C++ Programmer. en langage. 8 e édition. Avec une intro aux design patterns et une annexe sur la norme C++11. Claude Delannoy

Bases Java - Eclipse / Netbeans

Systeme d'exploitation

Cours 1: Java et les objets

Pour signifier qu'une classe fille hérite d'une classe mère, on utilise le mot clé extends class fille extends mère

Université du Québec à Chicoutimi. Département d informatique et de mathématique. Plan de cours. Titre : Élément de programmation.

Introduction au langage C

Environnements de développement (intégrés)

Environnements de développement (intégrés)

Utiliser Java sans BlueJ

Apprendre la Programmation Orientée Objet avec le langage Java (avec exercices pratiques et corrigés)

Remise à niveau d un programme JAVA du domaine public

Traduction des Langages : Le Compilateur Micro Java

Programmation en C/C++

Introduction à Java. Matthieu Herrb CNRS-LAAS. Mars

Quelques éléments de compilation en C et makefiles

Une introduction à Java

Éléments de programmation et introduction à Java

2 Grad Info Soir Langage C++ Juin Projet BANQUE

Web Tier : déploiement de servlets

et Programmation Objet

TwinCAT 3 C++ Création de modules C++ sous TwinCAT 3 VERSION : 1.0 / PH

Installation LTE-SIM. Simulation du réseau 4G (LTE-SIM) en vue d optimiser les ressources spectrales de l opérateur.

TP1 : Initiation à Java et Eclipse

Programmation Orientée Objet

Logiciel Libre Cours 3 Fondements: Génie Logiciel

Qui ont toujours à mon côté pour me soutenir et me guider au long de ce projet.

Les équations différentielles

Notions fondamentales du langage C# Version 1.0

Outils pour les réseaux de neurones et contenu du CD-Rom

Claude Delannoy. 3 e édition C++

Héritage presque multiple en Java (1/2)

Algorithmique & Langage C IUT GEII S1. Notes de cours (première partie) cours_algo_lgc1.17.odp. Licence

Programme «Analyste Programmeur» Diplôme d état : «Développeur Informatique» Homologué au niveau III (Bac+2) (JO N 176 du 1 août 2003) (34 semaines)

Cours de C++ François Laroussinie. 2 novembre Dept. d Informatique, ENS de Cachan

EXTENSION de Microsoft Dynamics CRM Réf FR 80452

Langage Java. Classe de première SI

Installation et compilation de gnurbs sous Windows

basée sur le cours de Bertrand Legal, maître de conférences à l ENSEIRB Olivier Augereau Formation UML

Gestion mémoire et Représentation intermédiaire

Programmer en JAVA. par Tama

Éléments d informatique Cours 3 La programmation structurée en langage C L instruction de contrôle if

Auto-évaluation Programmation en Java

Automatisation de l administration système avec

Tutoriel: Création d'un Web service en C++ avec WebContentC++Framework

C++ : PROGRAMMATION-OBJET

Plan Pédagogique du cours

Licence Bio Informatique Année Premiers pas. Exercice 1 Hello World parce qu il faut bien commencer par quelque chose...

Généralités sur le Langage Java et éléments syntaxiques.

Institut Supérieure Aux Etudes Technologiques De Nabeul. Département Informatique

Devenez un véritable développeur web en 3 mois!

Groupe Eyrolles, 2004 ISBN :

Génie Logiciel I. Cours VI - Typage statique / dynamique, fonctions virtuelles et classes abstraites, flots d entrées / sorties, et string

Seance 2: En respectant la méthode de programmation par contrat, implémentez les autres fonctions de jeu.

Plan du cours. Historique du langage Nouveautés de Java 7

TD/TP 1 Introduction au SDK d Android

Programmation C. Apprendre à développer des programmes simples dans le langage C

Chapitre VI- La validation de la composition.

Le langage C++ (partie I)

1) Installation de Dev-C++ Téléchargez le fichier devcpp4990setup.exe dans un répertoire de votre PC, puis double-cliquez dessus :

Évaluation et implémentation des langages

Builds et tests Utilisation de CMake et de Dart

TD Objets distribués n 3 : Windows XP et Visual Studio.NET. Introduction à.net Remoting

Xavier Costa. «Write once, run anywhere»

LA PROGRAMMATION POUR... les élèves ingénieurs

PG208, Projet n 3 : Serveur HTTP évolué

Programmation Orientée Objet en C#

Module.NET 3 Les Assemblys.NET

Formation, Audit, Conseil, Développement, UX WinRT Silverlight WPF Android Windows Phone

Catalogue des formations 2014

Entraînement au concours ACM-ICPC

The Mozilla Art Of War. David Teller. 20 septembre Laboratoire d Informatique Fondamentale d Orléans. La sécurité des extensions.

Traitement de données

Projet De Stijl Plate-forme pour robots mobiles

Construire des plug-ins pour SAS Management Console SAS 9.1

Cours de C/C++ par la pratique. Hugues Talbot

Aide mémoire UML & Java 1ère partie : Introduction. marc.lemaire@u-cergy.fr

Migration vers le Libre

Facultés Universitaires Notre-Dame de la Paix. Conception et Programmation Orientées- Object

Architectures web/bases de données

Transcription:

Introduction au langage C++

But Programmer une classe en C++ permettant de faire du calcul par intervalles L utiliser pour résoudre un problème de localisation «range only» (EX : plusieurs émetteurs et récepteurs radar qui tentent de localiser un cible) 19/11/2010 2

> Sommaire 1. a) Présentation b) Hello World! c) Namespace d) Références e) Classes f) Constructeurs/destructeur et surcharge g) Liste d initialisation h) Opérateurs i) Fonctions amies j) Héritage k) Classes abstraites l) Autres 19/11/2010 3

19/11/2010 4

Présentation Le C est inclus (à 99%) dans le C++ Le C++ rajoute des notions de programmation orientée objet (classe, héritage, polymorphisme comme en Java), ainsi que des facilités d écriture (surcharge d opérateurs ) 19/11/2010 5

Hello World! Notion de namespace Opérateur 19/11/2010 6

Namespace Plus besoin d utiliser std:: 19/11/2010 7

Références Paramètre passé par référence 19/11/2010 8

Classes TestClass.h TestClass.cpp Main.cpp 19/11/2010 9

Constructeurs/Destructeur et surcharge TestClass.h TestClass.cpp 19/11/2010 10

Liste d initialisation L initialisation des membres dans le constructeur peut être faite de cette façon 19/11/2010 11

Opérateurs TestClass.h TestClass.cpp 19/11/2010 12

Opérateurs Résultat Main.cpp 19/11/2010 13

Fonctions amies TestClass.h 19/11/2010 14

Fonctions amies TestClass.cpp 19/11/2010 15

Fonctions amies Main.cpp 19/11/2010 16

Héritage Classe de base Classe dérivées Appel à un constructeur spécifique de la classe de base 19/11/2010 17

Classes abstraites Classe de base abstraite Classe dérivées 19/11/2010 18

Classes abstraites 19/11/2010 19

Autres apports du C++ par rapport au C new, delete et new[], delete[] en C++ à la place de malloc() et free() en C pour utiliser des pointeurs et tableaux à taille variable Mécanisme d exceptions Templates Classes vector, list 19/11/2010 20

Annexes 19/11/2010 21

Le C est inclus (à 99%) dans le C++ : quand on fait du C, on fait aussi du C++ mais l inverse n est pas forcément vrai Du code C ou C++ peut être écrit dans un fichier.cpp mais seul du code C peut être écrit dans un fichier.c Dans un.h, on peut écrire du C ou du C++, mais il faut que les.c n incluent que des.h avec du C 19/11/2010 22

Différences entre les compilateurs Windows et Linux Linux Le compilateur C le plus utilisé est GCC Son équivalent C++ est G++ Windows GCC/G++ existent avec Cygwin et MinGW Différents IDE existent et fournissent leurs propres compilateurs Microsoft Visual Studio avec CL Borland C++ Builder / Turbo C++ / Borland Developper Studio avec BCC32 Code Blocks / Dev-C++ avec MinGW 19/11/2010 23

Différences entre les compilateurs Windows et Linux Equivalences Linux / Windows Linux/GCC Windows/Visual C++ Fichiers objets.o.obj Bibliothèque statique Bibliothèque dynamique.a.lib.so.dll Exécutable -.exe 19/11/2010 24

Utilisation de bibliothèques de fonctions externes Fichiers.c/.cpp Compilation Fichiers.obj Edition des liens Fichier.exe Regroupement Fichier.lib Edition des liens Est utilisée Edition des liens Fichier.dll 19/11/2010 25

Utilisation de bibliothèques de fonctions externes Cas où on possède des fichiers.h et.c/.cpp Exemple : on a Main.cpp qui doit appeler des fonctions déclarées dans Lib.h et définies dans Lib.cpp On met #include «Lib.h» dans Main.cpp On copie Lib.h et Lib.cpp dans le dossier de Main.cpp On compile et lie Lib.cpp et Main.cpp en les ajoutant au projet 19/11/2010 26

Utilisation de bibliothèques de fonctions externes Cas où on possède des fichiers.h,.lib et.dll Exemple : on a Main.cpp qui doit appeler des fonctions déclarées dans Lib.h et définies dans Lib.lib et Lib.dll On met #include «Lib.h» dans Main.cpp On ajoute le dossier de Lib.h dans les chemins de recherche de fichiers.h du projet On ajoute le dossier de Lib.lib dans les chemins de recherche de fichiers.lib du projet On compile Main.cpp et lie avec Lib.lib en les ajoutant au projet On ajoute le dossier de Lib.dll à la variable d environnement PATH du système 19/11/2010 27