Rechercher : dans
Par :

C++, orienté objet?

Dernière réponse le 12 jun 2008 à 19:22:25 vmalep, le 7 oct 2002 à 12:30:10 
 Signaler ce message aux modérateurs

Bonjour,
Lors une petite discussion avec un ami (rassurez-vous, on n'en est pas arrivé aux mains), on s'est demandé dans quelle mesure le C++ est un language orienté objet.

Il me semble en effet que s'il s'en rapproche, il n'est pas aussi orienté objet que l'est le java.

J'ai bien consulté les tutoriaux, mais je n'ai pas trouvé de comparaison. Quelqu'un pourrait-il éclaircir ce point?

Merci,
Pierre

Meilleures réponses pour « C++, orienté objet? » dans :
VisualBasic est un langage orienté objet VoirMythe VisualBasic est un langage orienté objet. Réalité FAUX. Explications Ce mythe revient régulièrement, mais c'est malheureusement faux : VB6 n'est pas un langage orienté objet. Prenons les principes de base de l'orienté objet : ...
[Programmation] Comment débuter, quel langage? VoirComment débuter, quel langage? Introduction Ceux que l'on peut utiliser Delphi/Pascal Java Python .Net Smalltalk Ceux que l'on peut utiliser à la rigueur C/C++ PHP Ada Lisp/Caml/... Ceux que l'on peut ne pas utiliser
Le mot-clé static ou les attributs et méthodes de classe en POO Voir(NOTE: Cet article explique la signification du mot-clé static au sein d'une classe. La signification de "static" en C n'a par exemple rien à voir.) Vous êtes débutant en programmation orientée objet. En Java, en C++...ou que sais-je encore,...
POO - Le polymorphisme VoirDéfinition du polymorphisme Le nom de polymorphisme vient du grec et signifie qui peut prendre plusieurs formes. Cette caractéristique est un des concepts essentiels de la programmation orientée objet. Alors que l'héritage concerne les classes (et...
Introduction à la programmation orientée objet VoirUn nouveau concept de développement Extrait de « Au coeur de ActiveX et OLE », de David Chappel "Au cours des 35 dernières années, les concepteurs de matériel informatique sont passés de machines de la taille d'un hangar à des ordinateurs...
Les objets en langage C++ VoirLa création d'objets En C++, il existe deux façons de créer des objets, c'est-à-dire d'instancier une classe : de façon statique de façon dynamique La création statique La création statique d'objets consiste à créer un objet en lui affectant un...

1

teebo, le 7 oct 2002 à 13:37:01

Je connais pas Java donc pas de comparaison en ce qui me concerne, mais C++ est definitivement un langage oriente objet...sans conteste...


ö,ö  "Il est plus facile de donner des conseils
\_/    que de les appliquer"

Répondre à teebo

2

ivvrick, le 7 oct 2002 à 17:45:58

Salut comment dit teebo C++ est un langage OO, mais comme il supporte le c, on peut ne pas faire de l'objet.

Beaucoup de développeur programme en C++ sans faire du tout objet.

Par contre java a été conçu pour faire et ne faire que de l'objet.
C'est à dire que tout ce que tu crées doit obligatoirement faire parti d'une classe et donc d'un objet.

C++ te donne les moyens de faire du tout objet mais ne t'y oblige pas.

Donc oui C++ est un langage objet.

J'ai un document qui compare technique les deux si tu veux je te l'envoie dés que je le trouve ....
a+

Répondre à ivvrick

3

vmalep, le 7 oct 2002 à 23:54:58

Merci, ça peut m'intéresser. Ceci dit, en cherchant sur le net, je suis tombé sur Python et ça a l'air encore mieux ( http://www.p3b.be ou http://www.python.org).

Répondre à vmalep

4

ivvrick, le 8 oct 2002 à 08:37:53

Tu as aussi Ruby qui nous viens du japon...
www.ruby-lang.org
a+

Répondre à ivvrick

5

teebo, le 8 oct 2002 à 08:55:01

Et l'inenarrable Smalltalk...du pur objet jusqu'a son interface de programmation meme!!!

ö,ö  "Il est plus facile de donner des conseils
\_/    que de les appliquer"

Répondre à teebo

6

sebsauvage, le 14 oct 2002 à 13:19:57

Oui oui, le C++ n'est en fait pas très 'objet'.
Il l'est beaucoup moins que Java ou Python.
Et très largement moins que SmallTalk.
(De l'avis même des membres du comité ANSI C++, comme Bruce Eckel, ce qui donne à réfléchir).

Et puis, les langages de plus haut niveaux (en particuliers ceux qui tournent sur des machines virtuelles comme Java, Python ou .Net), sont en passe de supplanter les langages objets de "l'ancienne" génération comme C++.
Sébastien SAUVAGE - sebsauvage at sebsauvage dot net

Répondre à sebsauvage

7

EdgeCrusher, le 14 oct 2002 à 13:47:45

Je connais Java et C++. Pour moi Java est du pur objet, tandis que c++ n'a qu'une facade objet. Certes on peut faire de l'heritage et tout les autres choses liées aux objets, mais derriere, d'apres mon experience, il n'y a que des "bonnes vieilles" structures C. Le c++ a le gout et l'odeur de l'objet, mais il semble n'etre "seulement" qu'un rafistolage du c pour faire comme de l'objet. Ceci dit c++ est tout dememe un tres bon tres riche language. Mais bon tout le monde s'est mis a faire de l'objet et on peut en faire avec un peu n'importe quoi : cobol (2), lisp, etc... peut etre meme de l'assembleur si on se creuse un peu la tete .....
En parlant de language novateur je conseille tout ceux que cela interessent le Hasckell ( http://www.haskell.org), un language de prog fonctionnelle dite pareisseuse, avis aux amateur....

Répondre à EdgeCrusher

8

tafiscobar, le 15 oct 2002 à 16:43:50

"langage des paresseux" => je conseille le rebol(j'y connais rien, mais d'apres ce a j'ai lu sur leur site, il est vraiment fait pour les paresseux)
Treve donc sur le rebol.
En fait, je ne comprends pas pourqoi on s'attaq tout le temps au C++,
moi personnellement, je trouve que l'on p tout faire avec(de la prog appli a la prog systeme)
contrairement a certains langages quis e valent de tres bons langages objets, mais peu efficaces en prog systemes
coe lel java, q je commence aapprendre(en tout cas mise a part les interfaces, le C++ fait tout ce q java fait en objet)
Une chose j p l'accpeter: C++ est oriente objet (on p programmer sans objet) alors q le java si j n m trompe'
il est un langage objet(rien faire sans objet).
Une chose est sure, le C++ n'est pas totalement objet, mais cela n'en fait pas un mauvaisd langage, bon il est difficile,
mais bon, on p tout faire avec(en tout cas, il n m viendrai pas a l'idee de faire un noyau systeme en java
bien q cela soit possible, je prefererai le C ou C++, mais cote appli, je p hesiter, suivant ce q j p faire).
Neanmoins, prog objet est mieux q procedurale.
tafiscobar

Répondre à tafiscobar

9

teebo, le 15 oct 2002 à 16:50:06

T'es un peu dur a lire sur ce coup Tafiscobar...
Sinon tu sembles defendre le C++ que personne n'avait attaque, certains ont emis des reserves sur son Objetitude, pas sur sa qualite! A part ca, prog objet est mieux que procedurale...ca depend des cas, tu dis toi meme que tu prendrai eventuellement C pour un noyau...qui lui n'est pas objet, donc comme quoi dans certains cas, le procedural...et puis le fonctionnel a aussi ses avantages selon ce que tu veux faire, ca n'a pas les memes buts, et forcement, si tu prends un marteau pour viser, tu vas trouver que c'est vraiment nul les marteaux, mais ce n'est pas une raison pour enfoncer les clous a coup de tournevis :-D

ö,ö  "Il est plus facile de donner des conseils
\_/    que de les appliquer"

Répondre à teebo

10

jhonny, le 5 jun 2008 à 07:54:42

Il m'a interresser ce probleme que vous posez...
etant un etudiant de genie logiciel, je sais que le c++
est une version avancee de c, et qu'on peut executer de
l'orienter objet en l'utilisant..
c'est un langage oo par exellence,
nous avons appris l'oo ce semestre avec ce langage
et tout marche bien...
merci

Répondre à jhonny

11

Char Snipeur, le 5 jun 2008 à 08:37:35

Au sujet du C++, il est vrai que c'est du C trafiqué et que tout est remis en structures C et fonction. Mais est-ce vraiment important ? Le fait qu'il soit orienté objet, c'est important au niveau du programmeur, que le compilateur fasse une tambouille derrière après, on s'en fiche non ? D'ailleurs, si ça se trouve, Java fait pareil. Et au final, tout fini en langage machine, qui ressemble plutôt à du GOTO !
Pour répondre au message original, disons que ça dépend de e qu'on entend par orienté objet. Si ça veux dire que le langage permet de faire tout ce qui est prévu par la POO, allors la réponse est oui. Si ça veux dire qu'il ne peut faire que ça, alors la réponse est non. Le C++, contrairement à Java, est capable de faire de l'héritage multiple. Serait il plus POO que la java ? Salutation ! avant je croyais, maintenant je suis fixé.Jésus Christ
Char Snipeur

Répondre à Char Snipeur

12

 safa, le 12 jun 2008 à 19:22:25
  • +1

Quel est le rôle de la commande gets en programmation C++

Répondre à safa