Salut,
j'ai un choix de langage à faire pour un projet, la performance en terme de vitesse d'éxécution est une contrainte du projet.
Quand est-il aujourd'hui de la différence de vitesse c# et ++ ?
merci
Salut,
j'ai un choix de langage à faire pour un projet, la performance en terme de vitesse d'éxécution est une contrainte du projet.
Quand est-il aujourd'hui de la différence de vitesse c# et ++ ?
merci
le c++ est en théorie plus rapide que le c#
en pratique ca peut etre différent, ou négligeable
par exemple un mauvais codeur c++ fera des trucs plus lent que certains en c#
après il faut aussi savoir réellement ce que tu as à faire
si c'est pas du calcul atomique ou météorologique, le c# peut amplement suffire, la différence de performance entre les 2 langages n'étant pas énorme, et les pc d'aujourd'hui plutot puissant
que dois tu faire dans ton programme ?
Salut,
Comme Pol63 l'a dit, selon ce que fait exactement le programme la différence peut être négligeable. Par contre, selon l'interface graphique, on peut dire qu'en C++ c'est souvent rapide à exécuter, et en C#... plus rapide à coder !
Par exemple, si ton appli a peu de fenêtres différentes, que le style par défaut (couleurs, bordures etc.) suffit, et que tu fais beaucoup d'appels à des fonctions système de Windows (timers très précis, gestion de handles...), ou si tu veux manipuler des pointeurs, prends C++.
Par contre si tu veux t'amuser à faire des trucs qui sortent de l'ordinaire dans l'interface (animations, skins...), que tu fais beaucoup d'appels à des bases de données, à des webservices ou autres, prends C#, c'est plus facile.
A noter que rien ne t'empêche non plus de créer une couche interface en C# et des modules en C++ pour le calcul ou autres.
bonjour ,
le c++ est le plus proche de langage machine car le compilateur c++ crée un code exécutable sur machine sans passe par le code intermédiaire comme le c# ou vb.net en plus c++ ne nécessite par un runtime pour s'exécute ce qui lui rend plus rapide mais moins portable.
Si tu aimes ma Réponse pense à cliquer sur
Visiter mon blogEt mes codes sources
- La simulation de navigation dans internet explorer avec Interop.SHDocVw
- Protéger mes données de configuration dans une dll compilée
Oui, Visual C++ a la facheuse tendance à lier tout les exécutables qu'il crée avec le runtime visual c++ de sa version, d'ou la nécessité de l'installer lors d'un déploiement. Si tu compile en natif avec Mingw tu n'en a pas besoin.
je parle pas d'un C++ de microsoft ou C++.NetTiens c'est nouveau cela !
Tu devrais aller expliquer à Microsoft qu'il faut qu'ils arrêtent de livrer leurs OS avec le RT C++, puisqu'il ne sert à rien.
moi je parle de C++ le le fils de C
Si tu aimes ma Réponse pense à cliquer sur
Visiter mon blogEt mes codes sources
- La simulation de navigation dans internet explorer avec Interop.SHDocVw
- Protéger mes données de configuration dans une dll compilée
Il faut quand même préciser que cette règle générale n'est de toute manière valide qu'avec du C++ "natif" qui, comparé au C# toujours managé, sera en effet plus rapide (en considérant dans les deux cas un code optimal).
Si on parle de C++ managé, il n'y a aucun avantage de performance à espérer.
Ca c'est valable quel que soit les langages considérépar exemple un mauvais codeur c++ fera des trucs plus lent que certains en c#![]()
Partager