Les pointeurs en C. valeur : main () { float valeur; void* pointeur; }

Slides:



Advertisements
Présentations similaires
Programmation Orienté Objet en C++
Advertisements

Rappels C.
Cours n° 7 Standard Template Library II.
C++ 6ème cours Patrick Reuter maître de conférences
C++ 5ème cours Patrick Reuter maître de conférences
Le mécanisme des exceptions
1 Quelques précisions sur l'héritage. 2 Signification de super.f() appel à la méthode f() masquée super : désigne l'objet appelant comme s'il était de.
Formation C débutant. Notion de compilation source.c executable Phase de compilation Fichier de texte brut, inexploitable directement par la machine Fichier.
Cours n° 8 Conception et Programmation à Objets
1 Tableaux des objets C++ si on connaît le nombre dobjets nécessaires davance on peut utiliser des tableau dobjets dans les fonctions dusage class Personne.
Liste générique dans Linux 2.6 Source : Understanding the Linux kernel Chap3 processes p.87.
Exercice 1 1 (père) et 1 (fils) 1 (père) et 0 (fils)
Les entrées /sorties en Java François Bonneville
B.Shishedjiev - Informatique II
Faculté I&C, Claude Petitpierre, André Maurer Les objets Introduction.
Les pointeurs 1. Notion de pointeurs cest Travailler avec les pointeurs cest Se rapprocher du matériel Nécessite de bien connaitre le fonctionnement de.
Leçon 6 : Structures de données dynamiques IUP 2 Génie Informatique Méthode et Outils pour la Programmation Françoise Greffier.
NIKA_2012_v7 avec surdimentionnement optique antiparasite Vue de profil Enveloppe virtuelle anti diffractions parasite (aucun objet 300K ne doit se trouver.
8PRO100 Éléments de programmation Allocation dynamique de la mémoire.
La fonction alloue un bloc de taille size. Il faut indiquer la taille du bloc que lon veut allouer. Le premier exemple: #include void main()
Chapitre VIII Structures dobjets. Chapitre VIII - Structures d'objets2 Structures d objets Il existe plusieurs relations entre les classes. Lhéritage.
Programmation fonctionnelle Le langage LISP
1 Les pointeurs et quelques rappels sur certains éléments du langage C.
Les pointeurs Enormément utilisé en C/C++ ! Pourquoi? A quoi ça sert?
Sommations et notation sigma
ECONOMIE INTERNATIONALE
DESS CCI POO-JAVA TD n°7 exercice n°1
Les pointeurs Modes d’adressage de variables. Définition d’un pointeur. Opérateurs de base. Opérations élémentaires. Pointeurs et tableaux. Pointeurs et.
Structures de données IFT-2000
Programme de baccalauréat en informatique Programmation Orientée Objets IFT Thierry EUDE Module 7 : Classes et fonctions paramétrables Département.
Conteneurs STL.
Révision des notions OO et Java Semaine 1 Jian-Yun Nie.
Projet Image en C++ Composition du trinôme : DUPONT Thomas MEHAULT Maxime NICOLAS Rémi L3 MI - Année
GPA789 Analyse et conception orientées objet 1 Professeur: Tony Wong, Ph.D., ing. Chapitre 6 Correspondance UML et C++
Un langage de programmation hybride
Design Pattern Memento. Principe : Enregistrer les changements d'états d'un objet Objectif : Pouvoir restituer les états précédents d'un objet.
1 Les paquetages («packages»). 2 L'objectif avec les paquetages («packages») est de rendre accessibles aux utilisateurs des classes définies par d'autres.
COURS DE PROGRAMMATION ORIENTEE OBJET :
Introduction au Langage C
1 Fonction : surcharge de sélection La surcharge de sélection consiste à implanter plusieurs méthodes de même nom dans une même classe à condition que.
Introduction au C++ héritage / polymorphisme
Standard Template Library
Héritage Lhéritage permet de spécialiser une classe en définissant une relation de type « est une sorte de ». #include comptebancaire.h class CompteEpargne.
Propriétés des ordonnancements SPT
Géométrie analytique Distance d’un point à une droite.
Géométrie analytique Distance entre deux points.
Texture 2D en PGC++.
Géométrie analytique Distance d’un point à une droite.
Structures de données IFT-2000
Une introduction à Java
Formation C++. Hello World ! #include /* Commentaire sur plusieurs lignes */ int main() { //Affiche hello world std::cout
Structures de données IFT-2000
Structures des données
(Vient du grec et signifie « Peut prendre plusieurs formes »)
2.1 - Historique Chapitre 2 : Introduction au langage C++
Le langage C Rappel Pointeurs & Allocation de mémoire.
Les collections. Gestion d’ensembles d’objets Tableaux Taille fixe Pas de manipulation aisée des objets dans le tableaux Base tab1[]= new Base[5]; for(int.
4 Introduction des objets. Les chaînes et tableaux
Sous-programmes.
Les pointeurs Suite.
La notion de type revisitée en POO
et quelques rappels sur certains éléments du langage C
Notions avancées du C++
Constructeurs H Batatia. Variable statique Une variable statique est partagée par tous les objets d’une classe.
ISBN Chapitre 10 L'implémentation des sous- programmes.
Conception de Programmes - IUT de Paris - 1ère année Cours 2 – Références et passage de paramètres Les Références –Introduction aux références.
Chapitre VII Techniques plus avancées à travers le concept de classe.
LIFI-Java 2004 Séance du Mercredi 29 sept. Cours 4.
Langage de Programmation Orientée Objet : C++
Int 10. Int 6.
Transcription de la présentation:

Les pointeurs en C. valeur : main () { float valeur; void* pointeur; }

Les pointeurs en C. valeur : main () { float valeur; void* pointeur; pointeur = &valeur; } pointeur :

Les pointeurs en C. nombre : main () valeur : { int nombre; float valeur; void* pointeur; pointeur = &valeur; } valeur : pointeur :

Les pointeurs en C. nombre : main () { int nombre; float valeur; void* pointeur; pointeur = &valeur; pointeur = &nombre; } valeur : pointeur :

Allocation de mémoire en C++ : new et delete. Définition de la classe Point. class Point { int x, y; }; main () Point* p1; Point* p2; p1 = new Point; delete p1; }

Allocation de mémoire en C++ : new et delete. class Point { int x, y; }; main () Point* p1; Point* p2; p1 = new Point; delete p1; } Déclaration de deux pointeurs sur des objets Point.

Allocation de mémoire en C++ : new et delete. class Point { int x, y; }; main () Point* p1; Point* p2; p1 = new Point; delete p1; } Allocation d'un objet Point : p1 le désigne.

Allocation de mémoire en C++ : new et delete. class Point { int x, y; }; main () Point* p1; Point* p2; p1 = new Point; delete p1; } Libération de la mémoire. p1 ne désigne plus rien.

Allocation de mémoire en C++ : new et delete. class Point { int x, y; }; main () Point* p1; Point* p2; p1 = new Point; delete p1; } p1 : ? p2 : ?

Allocation de mémoire en C++ : new et delete. class Point { int x, y; }; main () Point* p1; Point* p2; p1 = new Point; delete p1; } p1 : p2 : ?

Allocation de mémoire en C++ : new et delete. class Point { int x, y; }; main () Point* p1; Point* p2; p1 = new Point; delete p1; } p1 : p2 : ?

Des ensembles : tableaux et listes. Des objets alloués en mémoire : main () { Point* p; p = new Point; }

Des ensembles : tableaux et listes. main () { Point p[10]; }

Des ensembles : tableaux et listes. main () { Point* p[10]; p[0] = new Point; }

Des ensembles : tableaux et listes. main () { Point* p[10]; p[0] = new Point; p[1] = new Point; }

Des ensembles : tableaux et listes. main () { std::list<Point> points; }

Des ensembles : tableaux et listes. main () { std::list<Point> points; Point p; p.x = 10; p.y = 12; points.push_back (p); }

Des ensembles : tableaux et listes. main () { std::list<Point> points; Point p; p.x = 10; p.y = 12; points.push_back (p); p.x = 11; p.y = 13; }

Des ensembles : tableaux et listes. main () { std::list<Point> points; for (i = 0; i < 10 ; i++) Point p; p.x = i; p.y = i+1; points.push_back (p); }

Des ensembles : tableaux et listes. main () { std::list<Point*> points; for (i = 0; i < 10 ; i++) Point* p = new Point; p->x = i; p->y = i+1; points.push_back (p); }

Une liste multiforme : problème Polygone Point Ligne Ligne x1, y1 x2, y2 x1, y1 x2, y2 x, y x1, y1 x2, y2 ... xn, yn

Une liste multiforme : construction ref ref ref ref Polygone Point Ligne Ligne x1, y1 x2, y2 x1, y1 x2, y2 x, y x1, y1 x2, y2 ... xn, yn

Une liste multiforme. ref ref ref ref ? ? ? ?

Une liste multiforme. ref ref ref ref Figure Figure Figure Figure

Une liste multiforme. Figure Polygone Point Ligne Ligne x1, y1 x2, y2 ... xn, yn

Une liste multiforme. Figure couleur Polygone Point Ligne Ligne x1, y1 ... xn, yn

Une liste dans une structure. class Polygone { int x1, y1; int x2, y2; int x3, y3; ... }; main () { Polygone poly; poly.x1 = ...; poly.y1 = ...; etc... }

Une liste dans une structure. class Polygone { std::list<Point> points; }; main () { Polygone poly; poly.points.push_back (1,2); Poly.points.push_back (2,5); etc... }