Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
2728 connectés 

  FORUM HardWare.fr
  Programmation

  C ou C++?

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

C ou C++?

n°76637
Nospher
Posté le 29-11-2001 à 16:24:36  profilanswer
 

Ma question concerne la programmation de jeux en temps réel.
 
Je vois beaucoup de sources qui sont écrits en C.
Je voudrais savoir si il est préférable d'écrire ce genre de programmes en C que en C++.
Les accès aux classes du C++ sont ils plus lents que les accès à de simples structures?

mood
Publicité
Posté le 29-11-2001 à 16:24:36  profilanswer
 

n°76649
BENB
100% Lux.
Posté le 29-11-2001 à 16:56:20  profilanswer
 

nospher a écrit a écrit :

Ma question concerne la programmation de jeux en temps réel.
 
Je vois beaucoup de sources qui sont écrits en C.
Je voudrais savoir si il est préférable d'écrire ce genre de programmes en C que en C++.
Les accès aux classes du C++ sont ils plus lents que les accès à de simples structures?  




non mais certains mecanismes du C++ (copies d'objets) peuvent ralentir des appli mal ecrites...
Il faut savoir que tout code C++ peut etre ecrit en C (au prix de bcp de travail).

n°76661
Moriaben
Posté le 29-11-2001 à 17:45:19  profilanswer
 

j'apprends un peu le C++ en école d'ingénieur et bon d'après ce que dis le prof, le C++ apporte une facilité d'écriture dans certains domaines (notamment les pointeurs)
donc autant utiliser directement le C++ !

n°76666
la viper
Posté le 29-11-2001 à 17:56:04  profilanswer
 

j'suis pas spécialiste des jeux en temps reel en C/C++, mais il me semble que le C est plus approprié à cette tache.
 
L'avantage du C++ est la possibilité de faire du langage objet, hors, ce n'est peu etre pas ce que tu recherches au niveau d'un jeu video. Si par exemple du veux ajouter de l'assembleur, ca se ferra surement plus simplement (dans la logique d'ecriture en C qu'en C++) meme si c'est la meme chose au final.
 
Enfin, c'est ce que je pense, et j'suis pas un expert.

n°76670
deathsharp
Posté le 29-11-2001 à 18:02:08  profilanswer
 

Doom 3 sera bien en temps reel nan? :sarcastic:


---------------
What butter and whiskey won't cure, there is no cure for.
n°76671
n0mad
inscrit au XXe siècle
Posté le 29-11-2001 à 18:02:41  profilanswer
 

nospher a écrit a écrit :

Ma question concerne la programmation de jeux en temps réel.
 
Je vois beaucoup de sources qui sont écrits en C.
Je voudrais savoir si il est préférable d'écrire ce genre de programmes en C que en C++.
Les accès aux classes du C++ sont ils plus lents que les accès à de simples structures?  




 
Sur le papier, C est plus rapide que C++. En pratique, les performances d'un jeu sont bien plus dépendantes de la manière dont c'est programmé (et des optim) que de la différence C/C++.  
 
L'avantage du C++ permet de faire du code plus réutilisable/structuré/clair.  
Quel API graphique veux tu utiliser ? Par exemple, le C++ est plus adapté avec DirectX.


---------------
Pipiru piru piru pipiru pi
n°76682
sombresong​e
Posté le 29-11-2001 à 18:22:29  profilanswer
 

C++ Mieux pour travailler en équipe
C Mieux pour bidouiller à la maison
 
Pour faire de la vraix programation objet faut pas mal planifié son travaille avant de mettre les main dans le cambouis et écrire le code.

n°76690
246tNt
Resistance is futile
Posté le 29-11-2001 à 19:03:40  profilanswer
 

Si on regarde les sources des vrai jeux, souvent c'est un melange des deux.
 
On utilise plus le C++ pour decrire le fonctionnement du jeux, les interactions entre elles etc ...
 
Par contre pour le moteur de jeux, ce qui se trouve au plus bas, on utilise plutot le C

n°76828
Nospher
Posté le 30-11-2001 à 10:31:46  profilanswer
 

Ok, merci a tous pour vos reponses.

n°76832
BENB
100% Lux.
Posté le 30-11-2001 à 10:37:00  profilanswer
 

n0mad a écrit a écrit :

 
 
Sur le papier, C est plus rapide que C++. En pratique, les performances d'un jeu sont bien plus dépendantes de la manière dont c'est programmé (et des optim) que de la différence C/C++.  
 
L'avantage du C++ permet de faire du code plus réutilisable/structuré/clair.  
Quel API graphique veux tu utiliser ? Par exemple, le C++ est plus adapté avec DirectX.  




non le C++ est traduit par le compilo en C. Donc dire que le C est plus rapide est faux...
ce qui est plus lent c'est la conception meme du projet...
L'objet induit des copies qui ralentissent l'execution... Mais ces copies ne sont pas obligatoires, mais il faut savoir les eviter...
Le C++ fournit des outils comme les fonctions inlines qui font gagner beaucoup de temps par exemple... plus sures que des macros, et presque aussi rapides...

mood
Publicité
Posté le 30-11-2001 à 10:37:00  profilanswer
 

n°77041
LeGreg
Posté le 30-11-2001 à 21:48:50  profilanswer
 

Non le C++ n'est pas plus lent que le C.
 
Non le compilateur ne traduit pas le C++ en C (?peut etre les premiers compilos C++ mais apres c'est une idee incongrue?)
 
Non l'objet n'est pas plus lent que le procedural.
 
Oui certaines abstractions apportees par le C++ induisent un cout. (au hasard: heritage, fonctions virtuelles, operateur ++ postfixe, etc..). Mais elles viennent avec un gain pour le programmeur qui met en place plus facilement des solutions qu'il n'aurait pas pu mettre en oeuvre en procedural. (une fonction virtuelle est souvent mieux qu'un switch).
 
Oui il est possible d'inliner de l'ASM dans du code C++
 
Oui il est possible d'ecrire des jeux en C++. De plus en plus de jeux le sont et les API cross platforms supportent toutes le C++ (peut-etre Renderware a encore un Core en C). Certains utilisent meme des langages encore plus high level.
 
Donc C/C++ faux debat. j'ai plutot l'impression que le pur C est demode.
 
A+
LEGREG


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation

  C ou C++?

 

Sujets relatifs
Plus de sujets relatifs à : C ou C++?


Copyright © 1997-2025 Groupe LDLC (Signaler un contenu illicite / Données personnelles)