Langage c++

anassinho13 Messages postés 18 Date d'inscription   Statut Membre Dernière intervention   -  
mamiemando Messages postés 33758 Date d'inscription   Statut Modérateur Dernière intervention   -
Bonsoir tout le monde,

J'ai une petite question a propos de l'avantage ou les avantages du langage C++ par apport au autres langage de programmation orienté objet notamment Java par exemple.

Merci d'avance ;)
A voir également:

3 réponses

mamiemando Messages postés 33758 Date d'inscription   Statut Modérateur Dernière intervention   7 877
 
C'est un peu compliqué de manière de répondre de manière aboslu, donc je vais répondre par rapport à java.

Les templates (bien plus puissants que les classes génériques du java), les performances, la possibilité de faire des choses proche du système (gestion de la mémoire, appels systèmes), du vrai multi-héritage (contrairement à java ou la seule manière qui ne le gère qu'aux travers d'interfaces)
https://forums.commentcamarche.net/forum/affich-37604412-les-templates-en-c
https://forums.commentcamarche.net/forum/affich-37604421-introduction-a-la-stl-en-c-standard-template-library

Mais il y a des inconvénients aussi : il faut recompiler le programme pour chaque plateforme, le code peut dépendre du système, il faut comprendre comment marche un peu la gestion de la mémoire (pas de garbage collector), il y a des pièges (sans le mot clé virtual, le lien dynamique n'est pas fait).
https://forums.commentcamarche.net/forum/affich-27621184-fonctions-virtuelles-en-c#p27622390

Ensuite on pourrait comparé par rapport à d'autres langages objets, par exemple python, et les avantages et inconvénients ne seraient pas les mêmes.

Bonne chance
0
Le Dodo Messages postés 1934 Date d'inscription   Statut Membre Dernière intervention   246
 
Je rajouterai aussi :

Le C++ est un langage plus bas niveau (sa syntaxe est plus proche de celle d'une machine), tandis que le Java est un langage de haut niveau (syntaxe plus proche du langage humain).
0
Célien Messages postés 5729 Date d'inscription   Statut Membre Dernière intervention   1 993
 
Je dirais pas ça, par exemple dans les deux cas tu à un haut niveau en POO.
par contre Java est beaucoup plus riche, car il gère beaucoup plus de choses, pour avoir l'équivalent de Java en C++ tu doit y ajouter des librairies.
0
Le Dodo Messages postés 1934 Date d'inscription   Statut Membre Dernière intervention   246
 
Je le tiens de cette source : https://openclassrooms.com/fr/courses

Je suis plus habitué au C++, et il est vrai que je ne peux pas trop parler du Java...
Bref, le Site du Zéro (lien au dessus) vous en parlera bien mieux que moi, des différences... :-)
0
Célien Messages postés 5729 Date d'inscription   Statut Membre Dernière intervention   1 993
 
Cette "source" comme tu dis est juste un site destinés aux amateurs et aux débutants, et surtout aux cancres, et comporte un nombre énorme d'erreurs, la preuve en est, donc à éviter..
0
Le Dodo Messages postés 1934 Date d'inscription   Statut Membre Dernière intervention   246
 
Ah ouais ?

https://www.efrei.fr/mathieu-nebra-promo2008-fondateur-de-simple-it-createur-du-site-du-zero/

Tu m'en diras tant pour ce tutoriel. (je sais prendre les bons exemples tout de même !)

Et je peux dire que grâce à ce site, non, je ne suis pas un cancre dans ma promo...
0
anassinho13 Messages postés 18 Date d'inscription   Statut Membre Dernière intervention   28
 
Merci beaucoup pour votre reponse qui est vraiment interessante. Sinon j'ai attendu avoir une reponse qui touche aussi la partie securite qui n'est pas bonne en Java.!!
0
Célien Messages postés 5729 Date d'inscription   Statut Membre Dernière intervention   1 993
 
Ça ne sert pas à grand chose de comparer des langages si tu explique pas ton projet, par exemple si tu veux développer pour Android ça sera forcément du Java.
0
mamiemando Messages postés 33758 Date d'inscription   Statut Modérateur Dernière intervention   7 877
 
Vu que le programme tourne dans une machine virtuelle normalement tu es relativement cloisonné en java. Après j'imagine que c'est comme tout, il existe sans doute des trous de sécurité. Mais là c'est plus lié à l'implémentation de java qu'au langage lui-même...
0