Demande d'avis sur la qualité de mon code

a marqué ce sujet comme résolu.

Bonsoir à tous !

Je me permet d’ouvrir ce thread car j’ai décidé de me remettre au C++ mais je n’ai pas d’entourage proche qui pourrait me donner un avis sur la qualité de mon code. J’ai donc uploadé tout ça (je vous explique après quoi) sur GitHub pour ceux qui auraient le temps et l’envie de me faire un petit feedback (ou plus approfondi si vous en avez l’envie, je suis toujours preneur :p).

Il s’agit d’un repo qui contient quelques libs écritent afin de 'résoudre' les problèmes posés lors des TP du cours sur le C++ (je le mettrai à jour au fur et à mesure que je progresserai dans le cours bien sûr).

Merci à ceux qui prendront le temps de répondre :lol: ,

Unguest

Salut,

Je n’ai pas regardé grand chose (et je ne suis pas un pro du C++), mais ta fonction de calcul du PGCD par exemple ne devrait pas se charger de demander à l’utilisateur des nombres. Cette fontion doit juste calculer le PGCD, donc prendre deux entiers en entrée et retourner un entier.

+4 -0

Bonjour à toi Unguest,

Les mots-clef out et cin proviennent de la librairie standard du C++. On est obligé d’utilisé le préfixe std::

devant ces mot-clef là.

Pour alléger la syntaxe on peut utilisé l’expression suivant ce qui a pour but d’éviter de retapez le préfixe std:: devant out en l’occurrence.

using namespace std 

Exemple :

   std::cout << "Enter an invalid value to stop the input phase.\n";

ce qui donnera :

cout<< "Enter an invalid value to stop the input phase.\n";

Je te donne un autre conseille pour les retours chariots tu peut utilise le code suivant : endl.

C’est un mot-clef qui permet de retourner à la ligne comme si tu faisait un "\n"

C’est un mot-clef qui est issue de la librairie standard. De même tu n’a pas besoin de mettre le prefixe std:: .

+0 -4

YMartin, tu vas te faire taper sur les doigths … C’est pas une bonne idée.

Dans un 1er temps je te conseille d’utiliser le code suivant :

using namespace std 

ymartin078

En effet, si un jour, il me prenait l’outrecuidance d’écrire un procédure cout(), dans ce même source, il faudrait dire au compilateur/linker si je prends celle de la lib standard, c’est à dire std::cout(), ou bien celle que je viens d’écrire, c’est à dire cout() ou "MonNameSpace"::cout().

Bien cordialement.

+0 -0

Il y a des choses dans tes codes qui ne viennent clairement pas du cours C++ de ce site. Et il y a des gros problèmes avec les bonnes pratiques. (void dans les fonctions, pointeurs nus, pas de const, pré-déclaration de variables, etc). Tu as fait du C avant ?

+0 -0

using namespace std

J’ai entendu dire que c’était une pratique à éviter de la part des anti OpenClassrooms X)

Il y a des choses dans tes codes qui ne viennent clairement pas du cours C++ de ce site. Et il y a des gros problèmes avec les bonnes pratiques. (void dans les fonctions, pointeurs nus, pas de const, pré-déclaration de variables, etc). Tu as fait du C avant ?

gbdivers

Oui on va dire que j’ai fait du C pour les challenges de reverse sur Root-Me et ça m’a donné envie de faire du C++ (j’ai regardé vite fait il faudrait que j’utilise nullptr c’est ça ?)

Merci à tous de vos commentaires :)

Connectez-vous pour pouvoir poster un message.
Connexion

Pas encore membre ?

Créez un compte en une minute pour profiter pleinement de toutes les fonctionnalités de Zeste de Savoir. Ici, tout est gratuit et sans publicité.
Créer un compte