BATAILLE NAVALE C++

cptpingu Messages postés 3837 Date d'inscription dimanche 12 décembre 2004 Statut Modérateur Dernière intervention 28 mars 2023 - 16 mars 2011 à 22:03
cs_marciano Messages postés 1 Date d'inscription vendredi 22 avril 2005 Statut Membre Dernière intervention 21 mars 2011 - 21 mars 2011 à 14:36
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/52945-bataille-navale-c

cs_marciano Messages postés 1 Date d'inscription vendredi 22 avril 2005 Statut Membre Dernière intervention 21 mars 2011
21 mars 2011 à 14:36
Tres bon pour les debutants!
drake4m Messages postés 4 Date d'inscription dimanche 4 mai 2008 Statut Membre Dernière intervention 30 mai 2014
17 mars 2011 à 17:00
Bah merci Mr. l'expert :)
cptpingu Messages postés 3837 Date d'inscription dimanche 12 décembre 2004 Statut Modérateur Dernière intervention 28 mars 2023 123
16 mars 2011 à 22:06
J'oubliais:
- Niveau débutant, et non Expert.
cptpingu Messages postés 3837 Date d'inscription dimanche 12 décembre 2004 Statut Modérateur Dernière intervention 28 mars 2023 123
16 mars 2011 à 22:03
Pas très propre comme code...
Un mélange de C et de C++ étrange.

- Évite les "using namespace", voir: http://0217021.free.fr/portfolio/axel.berardino/articles/bon-usage-using-namespace , surtout dans un header !!!
- Pas besoin de faire du C, dans du C++. Donc tous les: malloc, printf, free ne devraient pas être présent dans le code.
- Utilisation de char* ou de char[] alors qu'il y a la classe std::string.
- Utilisation de type**, alors qu'il y a dans la STL, des std::list, des std::vector, etc...
- Maladresse de code:
if(this->cases[x][y].occupee)
return true;
else
return false;
devrait être tout simplement:
return cases[x][y].occupee;

- fonction(void): En C une fonction qui ne prend pas d'argument prend effectivement le type void. En C++ on écrit simplement: fonction()
- Fuites mémoires...
- Pas de NULL en C++, voir: http://0217021.free.fr/portfolio/axel.berardino/articles/null-en-cpp
- Préférez la liste d'initialisation dans un constructeur lorsque c'est possible.
- De bonnes conventions seraient nécessaire.Ex: Classe avec une majuscule, _ devant les attributs de classe.

Je n'ai pas tout regardé, j'ai noté tout ce qui m'a choqué au premier abord.
Rejoignez-nous