Différence avec Java Flashcards
Support de différents
paradigmes de programmation
– C++ est un langage plus proche de la programmation système
– Bibliothèque standard
– Compacité et efficacité
Définition et initialisation d’une instance de classe
– En JAVA
*LaClasse lc = new LaClasse;
.une référence à un objet alloué
dynamiquement dans le
tas
.initialisé par le constructeur de LaClasse
– En C++
*LaClasse lc;
.alloué sur la pile et initialisée par appel
automatique au constructeur par défaut
de LaClasse
Désallocation
– En JAVA
La désallocation est assurée par un ramasse miette
– En C++
L’espace alloué sur la pile est libéré après appel
automatique du destructeur
this
– En Java
this est une référence sur l’instance courante
– En C++
this est un pointeur sur l’instance courante
Les références
– En JAVA tous les objets alloués sont
manipulés via des références (pas de symbole dédié)
– En C++ : utilisation du symbole &
Cibles des références
– En JAVA, les références peuvent changer de cible au cours de l’exécution
– En C++, les références ne peuvent changer de cible au cours de l’exécution
la mise en œuvre du
polymorphisme
en Java :est automatique
en C++ : non