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

C++ Discussion :

---->> code commentaire <<----


Sujet :

C++

  1. #1
    Inscrit
    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    992
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations forums :
    Inscription : Janvier 2005
    Messages : 992
    Points : 217
    Points
    217
    Par défaut ---->> code commentaire <<----
    Bonjour
    MErci pour vôtre aide .

    Je voulais seulement vous demander vôtre aide sur les commentaires du code MErci d'avance pour vôtre réactivité.


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
     
     
    #include <boost/config.hpp> 
    #include <iostream> 
    #include <string> 
    #include <boost/graph/push_relabel_max_flow.hpp> 
    #include <boost/graph/adjacency_list.hpp> 
    #include <boost/graph/read_dimacs.hpp> 
    #include <boost/graph/graph_utility.hpp> 
     
    // Use a DIMACS network flow file as stdin. 
    // max_flow < max_flow.dat 
    // 
    // Sample output: 
    //  c  The total flow: 
    //  s 13 
    // 
    //  c flow values: 
    //  f 0 6 3 
    //  f 0 1 6 
    //  f 0 2 4 
    //  f 1 5 1 
    //  f 1 0 0 
    //  f 1 3 5 
    //  f 2 4 4 
    //  f 2 3 0 
    //  f 2 0 0 
    //  f 3 7 5 
    //  f 3 2 0 
    //  f 3 1 0 
    //  f 4 5 4 
    //  f 4 6 0 
    //  f 5 4 0 
    //  f 5 7 5 
    //  f 6 7 3 
    //  f 6 4 0 
    //  f 7 6 0 
    //  f 7 5 0 
     
    int 
    main() 
    { 
      using namespace boost; 
     
      typedef adjacency_list_traits<vecS, vecS, directedS> Traits; 
      typedef adjacency_list<listS, vecS, directedS, 
    property<vertex_name_t, std::string>,      
     
                                         [b][u]Ca sert à koi property<vertex..[/u] 
     
      property<edge_capacity_t, long, 
      property<edge_residual_capacity_t, long, 
      property<edge_reverse_t, Traits::edge_descriptor> > > > Graph; 
     
      Graph g; 
     
      property_map<Graph, edge_capacity_t>::type 
        capacity = get(edge_capacity, g); 
      property_map<Graph, edge_reverse_t>::type 
        rev = get(edge_reverse, g); 
      property_map<Graph, edge_residual_capacity_t>::type 
        residual_capacity = get(edge_residual_capacity, g); 
     
      Traits::vertex_descriptor s, t;                             // ça c'est bien les Sommets  :?: 
      read_dimacs_max_flow(g, capacity, rev, s, t); 
     
      long flow; 
    #if defined(BOOST_MSVC) && BOOST_MSVC <= 1300 // C'est le nombre de koi 
     
      // Use non-named parameter version 
      property_map<Graph, vertex_index_t>::type 
        indexmap = get(vertex_index, g); 
      flow = push_relabel_max_flow(g, s, t, capacity, residual_capacity, rev, indexmap); 
    #else 
      flow = push_relabel_max_flow(g, s, t); 
    #endif 
     
      std::cout << "c  The total flow:" << std::endl; // Std ça sert à koi 
      std::cout << "s " << flow << std::endl << std::endl; 
     
      std::cout << "c flow values:" << std::endl; 
      graph_traits<Graph>::vertex_iterator u_iter, u_end; 
      graph_traits<Graph>::out_edge_iterator ei, e_end; 
      for (tie(u_iter, u_end) = vertices(g); u_iter != u_end; ++u_iter) 
        for (tie(ei, e_end) = out_edges(*u_iter, g); ei != e_end; ++ei) 
          if (capacity[*ei] > 0) 
            std::cout << "f " << *u_iter << " " << target(*ei, g) << " " 
                      << (capacity[*ei] - residual_capacity[*ei]) << std::endl; 
     
      return 0; 
    } 
    [u][/u][/b]
    [/code]

  2. #2
    Membre expérimenté
    Inscrit en
    Décembre 2004
    Messages
    1 478
    Détails du profil
    Informations forums :
    Inscription : Décembre 2004
    Messages : 1 478
    Points : 1 664
    Points
    1 664
    Par défaut
    Le C++ est a cote.

  3. #3
    Inscrit
    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    992
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations forums :
    Inscription : Janvier 2005
    Messages : 992
    Points : 217
    Points
    217
    Par défaut ------>>> infos <<<<-------
    Oui mais c'est pas du C++

    Mon programme na ni classe ni objet ni héritage ni rien

    c'est un code C certe difficile à déchiffré

  4. #4
    Membre éclairé Avatar de reggae
    Profil pro
    Inscrit en
    Août 2005
    Messages
    773
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Août 2005
    Messages : 773
    Points : 795
    Points
    795
    Par défaut
    Tout ton gros paquet du début:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
     
    // Use a DIMACS network flow file as stdin.
    // max_flow < max_flow.dat
    //
    // Sample output:
    //  c  The total flow:
    //  s 13
    //
    //  c flow values:
    //  f 0 6 3
    //  f 0 1 6
    //  f 0 2 4
    //  f 1 5 1
    //  f 1 0 0
    //  f 1 3 5
    //  f 2 4 4
    //  f 2 3 0
    //  f 2 0 0
    //  f 3 7 5
    //  f 3 2 0
    //  f 3 1 0
    //  f 4 5 4
    //  f 4 6 0
    //  f 5 4 0
    //  f 5 7 5
    //  f 6 7 3
    //  f 6 4 0
    //  f 7 6 0
    //  f 7 5 0
    ...
    Tu n'es pas obligé de répéter les "//" chaque fois... Il te suffit d'utilser les /* */ c'est mieux je trouve.
    Ensuite il faut mettre des espaces dans ton code->meilleure visibilité.
    Et il me semble qu'il y a des petits problèmes d'alignement.

    Alors pour les comm's:
    Il te suffit de "raconter" ce que fait telle ou telle opération qui pourrait sembler compliquée à quelqu'un vovant le code pour la première fois, de décrire le comportement et les arguments de certaines fonctions,etc.
    Par contre ne noie pas ton code sous les comm's, ça risquerait de le rendre illisible.

  5. #5
    Rédacteur

    Avatar de khayyam90
    Homme Profil pro
    Architecte de système d’information
    Inscrit en
    Janvier 2004
    Messages
    10 369
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Architecte de système d’information

    Informations forums :
    Inscription : Janvier 2004
    Messages : 10 369
    Points : 40 164
    Points
    40 164
    Par défaut Re: ------>>> infos <<<<-------
    Citation Envoyé par faressam
    Oui mais c'est pas du C++

    Mon programme na ni classe ni objet ni héritage ni rien

    c'est un code C certe difficile à déchiffré
    non, c'est du c++. On remarquera les inclusions de iostream, string ou encore boost. De même que l'appel à des conteneurs de l'espace de nommage std.

    Je déplace donc dans C++

  6. #6
    Membre expérimenté
    Inscrit en
    Décembre 2004
    Messages
    1 478
    Détails du profil
    Informations forums :
    Inscription : Décembre 2004
    Messages : 1 478
    Points : 1 664
    Points
    1 664
    Par défaut
    Si, c'est du C++. Tu utilises l'iostream cout (qui est un objet), l'espace de nom de la bibliotheque boost, et ce qui ressemble furieusement a des templates (les <>).
    Tu inclus egalement des en-tetes standards du C++ (iostream et string) ainsi que les en-tetes de boost, dont l'extension est .hpp (pp pour ++).

  7. #7
    Membre habitué
    Inscrit en
    Octobre 2004
    Messages
    616
    Détails du profil
    Informations forums :
    Inscription : Octobre 2004
    Messages : 616
    Points : 164
    Points
    164
    Par défaut
    A vu de nez ca ressemble trés fortement a un des petit exemple tout fait trouvable sur le site de boost , non?

    Aprés, qu'est ce que tu ne comprend pas exeactement ?
    Deja renseigne toi sur l'utilisation simple des graph avec boost, ensuite sur les paramètre prit en compte par la fonction du calcul du flow et aprés tout ira sur des roulettes ^^

    edit :

    Ca sert à koi property<vertex..[/
    De mémoire ce sont les propriété contenu par les vertex, en l'occurence un string .

    Bon aprés j'ai toujours confondu vertex et edges alors me demande pas lequel est sommet et lequel est arc ^^

Discussions similaires

  1. Code "commentaire et status"
    Par bissm dans le forum Android
    Réponses: 1
    Dernier message: 01/05/2013, 10h32
  2. explications/commentaires de codes
    Par pascal913 dans le forum Access
    Réponses: 24
    Dernier message: 19/07/2006, 14h01
  3. commentaire sur un code
    Par Bibouda dans le forum C
    Réponses: 10
    Dernier message: 25/11/2005, 23h12
  4. [CR]Comment faire de longs commentaires dans le code
    Par liberio dans le forum SAP Crystal Reports
    Réponses: 4
    Dernier message: 07/06/2004, 20h45
  5. [VB6] mise en commentaire d'un bloc de code
    Par JuanDeLaPlaya dans le forum VB 6 et antérieur
    Réponses: 8
    Dernier message: 30/04/2003, 15h05

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