De Java à C++ UNIVERSITÉ DE NICE SOPHIA ANTIPOLIS
4v1.0 © 2005–Jean-Paul Rigault
2.2 Fonctions et classes 15
2.2.1 Types des fonctions et main() 15
2.2.2 Prototypes des fonctions 15
2.2.3 Séparation de l’interface et de l’implémentation d’une classe 16
Cas des templates de C++ 16
2.3 Contrôle d’accès 16
2.3.1 Des philosophies différentes de contrôle d’accès 16
2.3.2 Contrôle d’accès aux membres et aux classes 16
2.3.3 Amitié et contrôle d’accès au niveau package 17
2.4 Préprocesseur 17
Chapitre 3
Objets et classes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
3.1 Nature des objets 18
3.2 Création des objets 18
3.2.1 Allocation des objets 19
Allocation en C++ 19
Allocation en Java 20
3.2.2 Initialisation (construction) 20
Ordre des initialisations 21
Initialisation au vol 21
3.2.3 Finalisation (destruction) 22
Du bon usage de new en C++ 22
3.2.4 Membres statiques de classes 23
3.3 Désignation et copie des objets 24
3.3.1 Notion de référence 24
3.3.2 Copie des objets 24
Copie des types de base 25
Copie de la valeur en C++ 25
Constructeur de copie et opérateur d’affectation en C++ 25
Copie de référence en Java 25
Copie de valeur en Java 26
3.3.3 Objets constants 27
3.3.4 Passage de paramètres 27
Passage de paramètres en Java 27
Passage de paramètres en C++ 28
3.3.5 Retour de fonction 28