IdentifiantMot de passe
Loading...
Mot de passe oubli� ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les r�ponses en temps r�el, voter pour les messages, poser vos propres questions et recevoir la newsletter

Analyse de code Discussion :

Utilisation de StyleC++


Sujet :

Analyse de code

  1. #1
    Membre �clair�
    Profil pro
    Inscrit en
    Janvier 2009
    Messages
    219
    D�tails du profil
    Informations personnelles :
    �ge : 40
    Localisation : France

    Informations forums :
    Inscription : Janvier 2009
    Messages : 219
    Par d�faut
    Bonjour,
    Je dois utiliser ce fichier pour verifier mon code. J'ai pas mal de difficulte a comprendre son fonctionnement. Par exemple, je n'ai pas mis assez de commentaires, mais j'ai beau en mettre et mon pourcentage n'augmente pas. Savez-vous quelles sont les "normes" pour les commentaires?
    J'ai beaucoup de lignes de codes qui depassent 79 colonnes. Y-a-t-il un moyen pour que ca ne pose pas probleme a StyleC++ ?
    Enfin, j'ai quelques "Badly indented line in block." mais j'ai verifie plusieurs fois et j'ai pas l'impression que ce soit mal indente. D'ou cela peut-il venir sinon?

    Merci pour vos suggestions

    Et j'oubliais, aussi :
    Pointer not cleared after delete. Ici par exemple

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    void StaffDepartmentlist::deleteTop(){
    	if (head)
    	{
    		NodePointer2 tempPtr = head;
    		head = head->link;
    		delete tempPtr; // Pointer not cleared after delete.
     
    	}
    }
    ou

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    struct NodeStaffDepart
    {
    	string departmentname;
    	string staffname;	
    	NodeStaffDepart* link;			
    };
    typedef NodeStaffDepart* NodePointer2;
    Est-ce une erreur comme supprimer une valeur mais pas le pointeur qui pointe dessus ou supprimer un pointeur mais pas la valeur pointee ?

  2. #2
    R�dacteur
    Avatar de 3DArchi
    Profil pro
    Inscrit en
    Juin 2008
    Messages
    7 634
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2008
    Messages : 7 634
    Par d�faut
    Bonjour,
    Citation Envoy� par jane40 Voir le message
    Par exemple, je n'ai pas mis assez de commentaires, mais j'ai beau en mettre et mon pourcentage n'augmente pas.
    Savez-vous quelles sont les "normes" pour les commentaires?
    Augmenter les commentaires dans le code pour augmenter un indicateur n'est pas gage de qualit�. Un commentaire doit �tre pr�sent s'il pr�sente un int�r�t par rapport au code. En ce sens, il ne doit pas d�crire litt�ralement ce que le code fait par la suite, et ce pour deux raisons : la lecture du code est plus explicite et le code est toujours � jour... Tu peux trouver quelques discussions � ce sujet ici et ici.

    Citation Envoy� par jane40 Voir le message
    Enfin, j'ai quelques "Badly indented line in block." mais j'ai verifie plusieurs fois et j'ai pas l'impression que ce soit mal indente. D'ou cela peut-il venir sinon?
    Je ne connais pas ton StyleC++, mais peut �tre as-t-il du mal � distinguer les tabulations des espaces ?

    Citation Envoy� par jane40 Voir le message
    Et j'oubliais, aussi :
    Pointer not cleared after delete. Ici par exemple

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    void StaffDepartmentlist::deleteTop(){
    	if (head)
    	{
    		NodePointer2 tempPtr = head;
    		head = head->link;
    		delete tempPtr; // Pointer not cleared after delete.
     
    	}
    }
    Il semble te reprocher de ne pas avoir fait tempPtr=NULL apr�s le delete. Ta variable sort de sa port�e. Donc, il n'y a pas de raison de s'en inqui�ter. On peut vouloir le rajouter au cas o� un jour quelqu'un

  3. #3
    Membre �clair�
    Profil pro
    Inscrit en
    Janvier 2009
    Messages
    219
    D�tails du profil
    Informations personnelles :
    �ge : 40
    Localisation : France

    Informations forums :
    Inscription : Janvier 2009
    Messages : 219
    Par d�faut
    Citation Envoy� par 3DArchi Voir le message
    Je ne connais pas ton StyleC++, mais peut �tre as-t-il du mal � distinguer les tabulations des espaces ?


    Il semble te reprocher de ne pas avoir fait tempPtr=NULL apr�s le delete. Ta variable sort de sa port�e. Donc, il n'y a pas de raison de s'en inqui�ter. On peut vouloir le rajouter au cas o� un jour quelqu'un
    Merci. C'etait bien ca le probleme pour pointer not cleared after delete.
    Je ne comprends toujours pas le controle des commentaires par StyleC++ mais bon, j'ai reussi a atteindre le pourcentage requis.

    Je ne trouve pas StyleC++ vraiment bien a utiliser (meme si je ne connais aucun autre programme pour verifier du code C++), d'autant plus que personne n'a l'air de connaitre
    Y-a-t-il mieux?

  4. #4
    R�dacteur
    Avatar de 3DArchi
    Profil pro
    Inscrit en
    Juin 2008
    Messages
    7 634
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2008
    Messages : 7 634
    Par d�faut
    Citation Envoy� par jane40 Voir le message
    Y-a-t-il mieux?
    Le meilleur que je connaisse est la relecture par les pairs Il est rarement mis en �uvre, mais souvent tr�s efficace.
    Sinon, je sais qu'il existe des outils en g�n�ral payant d'analyse de code (cherche code analysis c++ ou metrics c++ ...). Professionnellement, je n'ai jamais �t� amen� � en utiliser. J'ai discut� avec d'autres �quipes qui en avait utilis�. Les remarques �taient souvent mitig�es.

  5. #5
    R�dacteur/Mod�rateur
    Avatar de JolyLoic
    Homme Profil pro
    D�veloppeur informatique
    Inscrit en
    Ao�t 2004
    Messages
    5 463
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 51
    Localisation : France, Yvelines (�le de France)

    Informations professionnelles :
    Activit� : D�veloppeur informatique
    Secteur : High Tech - �diteur de logiciels

    Informations forums :
    Inscription : Ao�t 2004
    Messages : 5 463
    Par d�faut
    En terme de mesures de code, j'ai d�j� utilis� plusieurs fois http://www.campwoodsw.com/sourcemonitor.html qui a l'avantage d'�tre gratuit.

    Pour ce qui est plus orient� analyse que simple mesure, il y a des outils genre lint++ (payant, mais pas tr�s cher), mais je n'ai jamais investit le temps qu'il doit falloir pour que �a puisse donner quelque-chose.
    Ma session aux Microsoft TechDays 2013 : D�velopper en natif avec C++11.
    Celle des Microsoft TechDays 2014 : Bonnes pratiques pour apprivoiser le C++11 avec Visual C++
    Et celle des Microsoft TechDays 2015 : Visual C++ 2015 : voyage � la d�couverte d'un nouveau monde
    Je donne des formations au C++ en entreprise, n'h�sitez pas � me contacter.

  6. #6
    Membre �clair�
    Profil pro
    Inscrit en
    Janvier 2009
    Messages
    219
    D�tails du profil
    Informations personnelles :
    �ge : 40
    Localisation : France

    Informations forums :
    Inscription : Janvier 2009
    Messages : 219
    Par d�faut
    Merci pour vos avis. Finalement, j'ai appris que StyleC++ a �t� d�velopp� dans et pour ma fac, donc c'est bien normal que personne ne connaisse
    En conclusion, il n'y a pas de solution miracle (tout du moins gratuire) pour le probl�me de style !

+ R�pondre � la discussion
Cette discussion est r�solue.

Discussions similaires

  1. utiliser les tag [MFC] [Win32] [.NET] [C++/CLI]
    Par hiko-seijuro dans le forum Visual C++
    R�ponses: 8
    Dernier message: 08/06/2005, 15h57
  2. R�ponses: 4
    Dernier message: 05/06/2002, 14h35
  3. utilisation du meta type ANY
    Par Anonymous dans le forum CORBA
    R�ponses: 1
    Dernier message: 15/04/2002, 12h36
  4. [BCB5] Utilisation des Ressources (.res)
    Par Vince78 dans le forum C++Builder
    R�ponses: 2
    Dernier message: 04/04/2002, 16h01
  5. R�ponses: 2
    Dernier message: 20/03/2002, 23h01

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo