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

Affichage des résultats du sondage: Au finale, pour vous, faut-il

Votants
124. Vous ne pouvez pas participer à ce sondage.
  • séparer le C et le C++

    54 43,55%
  • les unir

    10 8,06%
  • les unir mais savoir différencier les deux "styles de programmation"

    42 33,87%
  • non mais t'as rien compris

    25 20,16%
Sondage à choix multiple
C++ Discussion :

C et C++ mythe et realité


Sujet :

C++

  1. #121
    yan
    yan est déconnecté
    Rédacteur
    Avatar de yan
    Homme Profil pro
    Ingénieur expert
    Inscrit en
    Mars 2004
    Messages
    10 035
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur expert
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mars 2004
    Messages : 10 035
    Par défaut
    Pour revenir au sujet de depard voici une FAQ de Bjarne Stroustrup
    http://www.research.att.com/~bs/bs_faq.html

    trés interressant

  2. #122
    Membre éclairé
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    410
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2004
    Messages : 410
    Par défaut
    ?? comment tu définis un constructeur pas defaut?

  3. #123
    Alp
    Alp est déconnecté
    Expert confirmé

    Avatar de Alp
    Homme Profil pro
    Inscrit en
    Juin 2005
    Messages
    8 575
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Juin 2005
    Messages : 8 575
    Par défaut
    Et puis, suffit de faire ça + std::fill, et c'est réglé.
    Arrêtez de chipoter, quand même

    Et puis je ne vois pas ce que les flux du C++ ont en moins que ceux du C...

    M'enfin, vous verrez bien avec l'expérience ce qu'offre le C++ par rapport au C.

  4. #124
    Alp
    Alp est déconnecté
    Expert confirmé

    Avatar de Alp
    Homme Profil pro
    Inscrit en
    Juin 2005
    Messages
    8 575
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Juin 2005
    Messages : 8 575
    Par défaut
    Citation Envoyé par reptils
    ?? comment tu définis un constructeur pas defaut?
    Si ta classe s'appelle Maclasse, il suffit de fournir un constructeur qui ne prend aucun argument, de la forme Maclasse() donc. C'est ça, un constructeur par défaut.
    On peut aussi fournir un construteur qui prend des arguments, mais qui ont des valeurs par défaut. Il sera appelé en tant que constructeur par défaut dans ce cas là.

  5. #125
    yan
    yan est déconnecté
    Rédacteur
    Avatar de yan
    Homme Profil pro
    Ingénieur expert
    Inscrit en
    Mars 2004
    Messages
    10 035
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur expert
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mars 2004
    Messages : 10 035
    Par défaut
    Citation Envoyé par Alp
    Et puis, suffit de faire ça + std::fill, et c'est réglé.
    ??

    Citation Envoyé par Alp
    M'enfin, vous verrez bien avec l'expérience ce qu'offre le C++ par rapport au C.
    lol, même reponse

  6. #126
    Alp
    Alp est déconnecté
    Expert confirmé

    Avatar de Alp
    Homme Profil pro
    Inscrit en
    Juin 2005
    Messages
    8 575
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Juin 2005
    Messages : 8 575
    Par défaut
    Citation Envoyé par Mongaulois
    ??
    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
     
    #include <algorithm>
    #include <iostream>
     
    using namespace std;
     
    int main()
    {
      int* array = new int[15];
      fill(array, array+15, 2);
      for(int i = 0; i<15; i++)
        {
          cout << array[i] << endl;
        }
      return 0;
    }

  7. #127
    yan
    yan est déconnecté
    Rédacteur
    Avatar de yan
    Homme Profil pro
    Ingénieur expert
    Inscrit en
    Mars 2004
    Messages
    10 035
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur expert
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mars 2004
    Messages : 10 035
    Par défaut
    Citation Envoyé par Alp
    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
     
    #include <algorithm>
    #include <iostream>
     
    using namespace std;
     
    int main()
    {
      int* array = new int[15];
      fill(array, array+15, 2);
      for(int i = 0; i<15; i++)
        {
          cout << array[i] << endl;
        }
      return 0;
    }
    euh... dsl je ne voit pas se quoi tu parle. J'ai pas du tout suivre...

    Comment coderai tu avec les flux ce formatage :
    sur une ligne :
    - un flotant sur 10 caratère avec 3 chiffre aprés la virgule
    - un entier sur 8 caratère
    - un espace suivant d'un entier sur 9 caratere avec des 0 ala place des espaces

  8. #128
    Alp
    Alp est déconnecté
    Expert confirmé

    Avatar de Alp
    Homme Profil pro
    Inscrit en
    Juin 2005
    Messages
    8 575
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Juin 2005
    Messages : 8 575
    Par défaut
    Ca c'est pour l'initialisation d'un tableau, pour reptils.

    Pour les flux, tu n'as jamais consulté la doc des streams de la SL ?

    Tu peux faire tout ça avec setw, setfill, ...

  9. #129
    Alp
    Alp est déconnecté
    Expert confirmé

    Avatar de Alp
    Homme Profil pro
    Inscrit en
    Juin 2005
    Messages
    8 575
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Juin 2005
    Messages : 8 575

  10. #130
    Membre éclairé
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    410
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2004
    Messages : 410
    Par défaut
    je dis pas qu'on ne peut pas faire la meme chose en c++ mais juste que c'est moins pratique.

    EDIT: ce serait pas plutot fill(array, array+14, 2); ?

  11. #131
    yan
    yan est déconnecté
    Rédacteur
    Avatar de yan
    Homme Profil pro
    Ingénieur expert
    Inscrit en
    Mars 2004
    Messages
    10 035
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur expert
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mars 2004
    Messages : 10 035
    Par défaut
    Citation Envoyé par Alp
    Ca c'est pour l'initialisation d'un tableau, pour reptils.

    Pour les flux, tu n'as jamais consulté la doc des streams de la SL ?

    Tu peux faire tout ça avec setw, setfill, ...
    Mouais. Enfin c'est super lourd.
    C'est quand même plus rapide :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    char ligne[1024];
    float f =23.5689;
    int a = 10;
    int b = 23;
    sprintf(ligne,"% 10.3f% 8d %09d",f,a,b);

  12. #132
    Rédacteur

    Avatar de Matthieu Brucher
    Profil pro
    Développeur HPC
    Inscrit en
    Juillet 2005
    Messages
    9 810
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Développeur HPC
    Secteur : Industrie

    Informations forums :
    Inscription : Juillet 2005
    Messages : 9 810
    Par défaut
    Citation Envoyé par reptils
    je dis pas qu'on ne peut pas faire la meme chose en c++ mais juste que c'est moins pratique.

    EDIT: ce serait pas plutot fill(array, array+14, 2); ?
    Non, c'est bien +15.

  13. #133
    Rédacteur
    Avatar de Laurent Gomila
    Profil pro
    Développeur informatique
    Inscrit en
    Avril 2003
    Messages
    10 651
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Avril 2003
    Messages : 10 651
    Par défaut
    C'est plus rapide mais c'est beaucoup moins type-safe.

  14. #134
    Alp
    Alp est déconnecté
    Expert confirmé

    Avatar de Alp
    Homme Profil pro
    Inscrit en
    Juin 2005
    Messages
    8 575
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Juin 2005
    Messages : 8 575
    Par défaut
    Super pratique à lire aussi

    Pour répondre à ta question, oui on peut le faire en C++

    Ca ne tient qu'à toi de créer des raccourcis pour ce genre de choses afin de rendre plus facile à utiliser la chose.
    Boost.Format fournit ce qu'il faut pour manipuler plus facilement en C++.
    Mais en C++ standard tu disposes cependant de ce qu'il faut.

    C'est une question de goût après.

  15. #135
    yan
    yan est déconnecté
    Rédacteur
    Avatar de yan
    Homme Profil pro
    Ingénieur expert
    Inscrit en
    Mars 2004
    Messages
    10 035
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur expert
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mars 2004
    Messages : 10 035
    Par défaut
    pour comparait comment ecrivez vous
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    char ligne[1024];
    float f =23.5689;
    int a = 10;
    int b = 23;
    sprintf(ligne,"% 10.3f% 8d %09d",f,a,b);
    avec les flux??

  16. #136
    Rédacteur

    Avatar de millie
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    7 015
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 7 015
    Par défaut
    Citation Envoyé par Mongaulois
    Mouais. Enfin c'est super lourd.
    C'est quand même plus rapide :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    char ligne[1024];
    float f =23.5689;
    int a = 10;
    int b = 23;
    sprintf(ligne,"% 10.3f% 8d %09d",f,a,b);

    http://c.developpez.com/faq/cpp/?pag...GS_convertform

    Mouais... :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
        std::ostringstream oss;
        oss <<f<<" "<<a<<" "<<b;
        return oss.str();
    Et fonctionne aussi pour tous les objets où l'on redéfini l'opérateur << avec les flux (on est donc pas limité au seul %d, %f... de sprintf)

  17. #137
    yan
    yan est déconnecté
    Rédacteur
    Avatar de yan
    Homme Profil pro
    Ingénieur expert
    Inscrit en
    Mars 2004
    Messages
    10 035
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur expert
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mars 2004
    Messages : 10 035
    Par défaut
    Citation Envoyé par millie

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
        std::ostringstream oss;
        oss <<f<<" "<<a<<" "<<b;
        return oss.str();
    Et fonctionne aussi pour tous les objets où l'on redéfini l'opérateur << avec les flux (on est donc pas limité au seul %d, %f... de sprintf)
    ben non justement.
    Ce qui sortira n'aura pas le même format

  18. #138
    Alp
    Alp est déconnecté
    Expert confirmé

    Avatar de Alp
    Homme Profil pro
    Inscrit en
    Juin 2005
    Messages
    8 575
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Juin 2005
    Messages : 8 575
    Par défaut
    @ millie et Mongaulois : il suffit d'utiliser les manipulateurs pour formater ... cf l'url que j'ai donné plus tôt.

  19. #139
    Rédacteur
    Avatar de Laurent Gomila
    Profil pro
    Développeur informatique
    Inscrit en
    Avril 2003
    Messages
    10 651
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Avril 2003
    Messages : 10 651
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    std::ostringstream oss;
    oss << std::setw(10) << std::setfill(' ') << std::setprecision(3) << std::fixed << f << " "
        << std::setw(8)  << std::setfill(' ') << a << " "
        << std::setw(9)  << std::setfill('0') << b;
    C'est plus verbeux, mais au moins c'est beaucoup moins obscur que les formatteurs C, et on ne passe pas une heure à chercher le bon. Et puis rien ne t'empêche d'écrire ton propre truc avec la syntaxe que tu préfères, comme le fait boost.format.

  20. #140
    yan
    yan est déconnecté
    Rédacteur
    Avatar de yan
    Homme Profil pro
    Ingénieur expert
    Inscrit en
    Mars 2004
    Messages
    10 035
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur expert
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mars 2004
    Messages : 10 035
    Par défaut
    Citation Envoyé par Alp
    @ millie et Mongaulois : il suffit d'utiliser les manipulateurs pour formater ... cf l'url que j'ai donné plus tôt.
    Je demande juste pour comparait les code, que quelqu'un qui connait bien les flux traduise mon code avec les même formatage.

+ Répondre à la discussion
Cette discussion est résolue.
Page 7 sur 18 PremièrePremière ... 3456789101117 ... DernièreDernière

Discussions similaires

  1. Mythes & Réalité
    Par philben dans le forum Contribuez
    Réponses: 6
    Dernier message: 07/07/2006, 07h05
  2. [TV] Emission Télé Réalité(encore)
    Par ArHacKnIdE dans le forum Films & TV
    Réponses: 30
    Dernier message: 31/05/2006, 11h47
  3. Liste deroulante et VALUE non conforme a la realité
    Par ahage4x4 dans le forum Général JavaScript
    Réponses: 7
    Dernier message: 27/05/2005, 13h33
  4. Réponses: 2
    Dernier message: 05/10/2004, 22h43

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