De C vers C++ ?

boualiasma Messages postés 393 Date d'inscription lundi 22 juin 2009 Statut Membre Dernière intervention 23 décembre 2011 - 25 juil. 2009 à 10:41
cs_ghuysmans99 Messages postés 3982 Date d'inscription jeudi 14 juillet 2005 Statut Membre Dernière intervention 30 juin 2013 - 25 juil. 2009 à 10:59
Salut,

J'ai crée mon programme C sous Windows avec Visaul Studio 2008.
Lorsque j'ajoute un fichier alors je trouve un fichier c++.
Mais, je mis par exemple "main.c" puisque par défaut c'est "main.cpp" et commence mon programme C.
Il me reste un petit problème dans mon programme C. Mais, je trouve le code de solution en C++.

J'ai quelques questions pour clarifier les choses :

1) Je n'ai pas encore terminé mon programme C qui contient des
fonctions et je pense aussi à faire des modules *.h pour grouper les
traitements fréquents (ce programme n'est pas la version finale).
- Est ce que je peux migrer vers C++ ?
- Il y aura des modifications à faire ?
- Si je copie un programme C dans un nouveau programme vide C++ et je ne fais pas aucune modification alors il aura pas des problèmes ?
Sinon donc quel est l'avantage de C++ dans ce cas ?
- C'est logique de créer un projet C++ et écrire dedans de code C.

2) Au niveau temps d'exécution (plus rapide), c'est mieux d'utiliser C ou C++ ?

3) le code C++ est portable ? Si on pense à exécuter un programme sur plusieurs machines alors c'est mieux d'utiliser C ou C++ ?

Merci

1 réponse

cs_ghuysmans99 Messages postés 3982 Date d'inscription jeudi 14 juillet 2005 Statut Membre Dernière intervention 30 juin 2013 16
25 juil. 2009 à 10:59
Si ton code est trop long, sépare en plusieurs paires de fichiers (.c avec le code et .h avec les prototypes, structures, ...). Ton main.c n'a qu'à inclure les autres headers (seulement les headers) et appeler les fonctions.

1)
- Oui, tu peux migrer vers C++
- Non, ça passera à la compilation sans problèmes (mais tu pourras virer les typedef dans la définition des structures, par exemple)
- Non, je ne pense pas
- Bah oui, ... y'a rien de mal à ça

2)
- Si tu utilises les classes, c'est (un tout petit peu) plus lent ... mais ce n'est pas grave car tu gagnes énormément en lisibilité

3)
- Si tu utilises des APIs à tout bout de champ, non. Mais tu peux faire tes propres librairies multi-plateformes (dépendant de l'OS qui compile, les fonctions sont différentes, à cause des APIs par exemple)

---
VB.NET is good ... VB6 is better
0
Rejoignez-nous