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

Contribuez C++ Discussion :

C++0x : Final Committee Draft disponible


Sujet :

Contribuez C++

  1. #1
    Expert éminent

    Inscrit en
    novembre 2005
    Messages
    5 145
    Détails du profil
    Informations forums :
    Inscription : novembre 2005
    Messages : 5 145
    Points : 6 911
    Points
    6 911
    Par défaut C++0x : Final Committee Draft disponible
    Ici: http://www.open-std.org/JTC1/SC22/WG...2010/n3092.pdf

    La suite des opérations: jusque début juillet pour faire parvenir les commentaires officiels.

    3 réunions pour agir sur ces commentaires (août 2010, novembre 2010, mars 2011). La dernière peut décider soit de repartir pour un FCD (et donc des commentaires dont il faut tenir compte) soit pour un FDIS (ou il faut dire oui ou non).
    Les MP ne sont pas là pour les questions techniques, les forums sont là pour ça.

  2. #2
    Membre émérite
    Profil pro
    Inscrit en
    novembre 2004
    Messages
    2 750
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : novembre 2004
    Messages : 2 750
    Points : 2 660
    Points
    2 660
    Par défaut
    C'est quoi le nouveau nom ? C++1x ?...

  3. #3
    Expert éminent

    Inscrit en
    novembre 2005
    Messages
    5 145
    Détails du profil
    Informations forums :
    Inscription : novembre 2005
    Messages : 5 145
    Points : 6 911
    Points
    6 911
    Par défaut
    Si tu regardes les papiers du mailing, C++0X continue a etre utilise (et il me semble que je n'ai pas vu d'autre designation, mais je n'ai pas fait particulierement attention a cela)
    Les MP ne sont pas là pour les questions techniques, les forums sont là pour ça.

  4. #4
    Expert éminent sénior
    Avatar de koala01
    Homme Profil pro
    aucun
    Inscrit en
    octobre 2004
    Messages
    11 581
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : Belgique

    Informations professionnelles :
    Activité : aucun

    Informations forums :
    Inscription : octobre 2004
    Messages : 11 581
    Points : 30 401
    Points
    30 401
    Par défaut
    Citation Envoyé par Jean-Marc.Bourguet Voir le message
    Si tu regardes les papiers du mailing, C++0X continue a etre utilise (et il me semble que je n'ai pas vu d'autre designation, mais je n'ai pas fait particulierement attention a cela)
    D'après la discussion créée lorsqu'il a été voté, Herb Sutter aurait effectivement proposé de commencer à parler de C++11, pour en finir avec le troll relié à 0x...

    Mais s'il y a des commentaires trop importants en mars 2011 (comprend "nécessitant des ajustements importants), nous risquons de repartir pour un tour, et je ne peux m'empêcher de penser que cela pourrait très facilement nous mener à 2012, et qu'il serait dommage de nommer C++11 une norme réellement finalisée en... 2012...


    Bon, là, c'est le "scénario catastrophe", bien sur, car il faut rester optimiste et se dire que l'on peut effectivement espérer qu'elle sera finalisée dans le courent de l'année 2011.

    Sa dénomination finale pourrait donc effectivement être C++11
    A méditer: La solution la plus simple est toujours la moins compliquée
    Ce qui se conçoit bien s'énonce clairement, et les mots pour le dire vous viennent aisément. Nicolas Boileau
    Compiler Gcc sous windows avec MinGW
    Coder efficacement en C++ : dans les bacs le 17 février 2014
    mon tout nouveau blog

  5. #5
    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
    Points : 13 015
    Points
    13 015
    Par défaut
    Salut,
    On se rapproche donc, s'il y a peu de commentaires, de la future norme. A télécharger et lire précieusement maintenant.

  6. #6
    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 : 48
    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
    Points : 16 213
    Points
    16 213
    Par défaut
    D'ailleurs, si certains ont des commentaires, n'hésitez pas, on transmettra !
    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.

  7. #7
    Membre chevronné
    Avatar de Goten
    Profil pro
    Inscrit en
    juillet 2008
    Messages
    1 580
    Détails du profil
    Informations personnelles :
    Âge : 32
    Localisation : France

    Informations forums :
    Inscription : juillet 2008
    Messages : 1 580
    Points : 2 205
    Points
    2 205
    Par défaut
    Ah cool ça . On a jusqu'à quand? (ouai on sait jamais, en le lisant un truc pourrait me sauter aux yeux)
    "Hardcoded types are to generic code what magic constants are to regular code." --A. Alexandrescu

  8. #8
    Expert éminent

    Inscrit en
    novembre 2005
    Messages
    5 145
    Détails du profil
    Informations forums :
    Inscription : novembre 2005
    Messages : 5 145
    Points : 6 911
    Points
    6 911
    Par défaut
    Citation Envoyé par Goten Voir le message
    Ah cool ça . On a jusqu'à quand? (ouai on sait jamais, en le lisant un truc pourrait me sauter aux yeux)
    Début juillet il me semble. J'ai pas la date précise sous les yeux.
    Les MP ne sont pas là pour les questions techniques, les forums sont là pour ça.

  9. #9
    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
    Points : 13 015
    Points
    13 015
    Par défaut
    Salut,
    Citation Envoyé par JolyLoic Voir le message
    D'ailleurs, si certains ont des commentaires, n'hésitez pas, on transmettra !
    Pour l'instant, sans avoir relu le nouveau draft, il y avait le point dont on avait discuté sur comp.std.c++ sur le =default qui n'était pas autorisé (en déclaration) sur les destructeurs (en fait sur les 4 fcn spéciales) non triviaux :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    struct base
    {
      virtual ~base()=default; // erreur
    };
    struct base_ok
    {
      virtual ~base_ok();
    };
    base_ok::~base_ok()=default(); // OK
     
    struct trivial
    {
       ~trivial()=default; // OK !!
    };
    Je ne sais pas si ça été rediscuté, mais perso, je trouve gênant d'avoir des comportements OK et d'autres non, le plus simple étant de pouvoir faire =default indépendamment des cas de trivialité.
    Je me reformule car je me rends compte que ce n'est pas très clair, mais j'aurais aimé pouvoir écrire =default dans la classe que le destructeur soit trivial ou non :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    struct i_have_a_dream
    {
    virtual ~i_have_a_dream()=default;
    explicit i_have_a_dream(i_have_a_dream const&)=default;
    private:
    i_have_a_dream(i_have_a_dream const&)=default;
    };
    Aux dernières nouvelles, le code ci-dessus n'était pas possible. Il fallait séparer déclaration et default-definition.

  10. #10
    Expert confirmé

    Profil pro
    Inscrit en
    février 2006
    Messages
    2 334
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : février 2006
    Messages : 2 334
    Points : 4 604
    Points
    4 604
    Par défaut
    hum j'avais rien à faire donc j'ai commencé la lecture du pdf, un truc m'a choqué :
    int main(int argc, char*argv[]){/*...*/}
    heu c'est moi ou on se tape encore les char* comme représentant officiel des chaines de caractères?

    j'aurai cru que le comité aurait vraiment dépoussiéré la norme, genre mettre ça en main :

    int main(int argc, string argv[]){/*...*/}
    ou encore mieux :

    int main(vector<string> args){/*...*/}
    bref rien qu'en ayant lu le coup du main, je sens que c++0x va encore me faire pester quelque peu ><

  11. #11
    Modérateur
    Avatar de bruno_pages
    Homme Profil pro
    Développeur informatique
    Inscrit en
    juin 2005
    Messages
    3 514
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : juin 2005
    Messages : 3 514
    Points : 6 658
    Points
    6 658
    Par défaut
    stardeath, cette demande est irresponsable car elle introduirait une incompatibilité faisant que 100% des applications C++ ne serait plus compilable, que ce soit celles écrites à la main et 'pire' celles produites automatiquement , et ce de plus pour une piètre raison

    la compatibilité ascendante d'une version à une autre est une chose essentielle, toute rupture ne doit avoir lieu que parce qu'il n'y a aucune autre solution, et que pour des très très bonnes raisons. Le mieux est rapidement l'ennemi du bien, surtout pour de 'bonnes' intentions ...
    Bruno Pagès, auteur de Bouml (freeware), mes tutoriels sur DVP (vieux, non à jour )

    N'oubliez pas de consulter les FAQ UML et les cours et tutoriels UML

  12. #12
    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 : 48
    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
    Points : 16 213
    Points
    16 213
    Par défaut
    Je ne pense pas qu'il demandait un remplacement de la fonction main, mais plutôt la mise à disposition d'une écriture supplémentaire. Et dans ce cas, je ne vois rien qui poserait problème en terme de compatibilité. On pourrait aussi alors se poser la question d'écritures supplémentaires prenant aussi en compte d'autre jeux de caractères. Je ne me souviens pas de discussion sur ce sujet, je me renseigne.
    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.

  13. #13
    Expert confirmé

    Profil pro
    Inscrit en
    février 2006
    Messages
    2 334
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : février 2006
    Messages : 2 334
    Points : 4 604
    Points
    4 604
    Par défaut
    irresponsable peut être mais tout ce que je vois c'est qu'on se tape encore de la compatibilité c et tout ce qui en découle, gérer les indices des "tableaux" à la main etc...
    loin de moi l'idée de virer les pointeurs, mais qu'ils servent ce à quoi ils devraient servir : manipuler des adresses, et non pas compter sur un hypothétique '\0' pour coder une chaine de caractères ><

    si ma solution est trop sévère, un bon gros deprecated à la compilation serait déjà pas mal, mais même pas.

    on a la chance d'avoir une stl très fournis, si c'est pour la perdre au profit d'incohérences assez monstrueuses, c'est assez dommage.
    et tout ce que je vois c'est qu'on se dirige vers un c++/java, où là aussi sous couvert de compatibilité, on garde tout et n'importe quoi.

    alors certes le c++0x n'est qu'une révision du c++, mais ça serait quand même pas mal de corriger les absurdités de c++ (ou tout du moins ajouter ce qu'il faut pour estomper celles-ci, comme cette histoire de main)

  14. #14
    Membre chevronné
    Avatar de Joel F
    Homme Profil pro
    Chercheur en informatique
    Inscrit en
    septembre 2002
    Messages
    918
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Chercheur en informatique
    Secteur : Service public

    Informations forums :
    Inscription : septembre 2002
    Messages : 918
    Points : 1 921
    Points
    1 921
    Par défaut
    J'avouerais qu'avoir des phases de deprecated->obsolete sur certaines features serait les bienvenus.

    On est plus en 1683 ou cette compatibilité était un argument marketing.
    Il serait peut etre de bon aloi à passer à du nettoyage de features éculées.

  15. #15
    Modérateur
    Avatar de bruno_pages
    Homme Profil pro
    Développeur informatique
    Inscrit en
    juin 2005
    Messages
    3 514
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : juin 2005
    Messages : 3 514
    Points : 6 658
    Points
    6 658
    Par défaut
    Citation Envoyé par Joel F Voir le message
    On est plus en 1683 ou cette compatibilité était un argument marketing.
    vous savez de combien de milliers d'applications est constituer par exemple une distribution Linux ? C'est vous qui allez faire les modifications nécessaires parce que le compilateur créé des incompatibilités ?

    Franchement Je pense être assez bien placé pour parlez de ce qu'est la compatibilité car j'en suis à la fois acteur avec Bouml et victime avec Qt.
    Bruno Pagès, auteur de Bouml (freeware), mes tutoriels sur DVP (vieux, non à jour )

    N'oubliez pas de consulter les FAQ UML et les cours et tutoriels UML

  16. #16
    Expert confirmé

    Profil pro
    Inscrit en
    février 2006
    Messages
    2 334
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : février 2006
    Messages : 2 334
    Points : 4 604
    Points
    4 604
    Par défaut
    Citation Envoyé par bruno_pages Voir le message
    vous savez de combien de milliers d'applications est constituer par exemple une distribution Linux ? C'est vous qui allez faire les modifications nécessaires parce que le compilateur créé des incompatibilités ?

    Franchement Je pense être assez bien placé pour parlez de ce qu'est la compatibilité car j'en suis à la fois acteur avec Bouml et victime avec Qt.
    incompatibilités? je les cherche toujours, le code c++98 sera compilé en capacité c++98 et le c++0x le sera en 0x, puisque de toute façon on fera une édition de lien comme avant sans que ça change un broc.

    un peu de dépoussiérage ne fera pas de mal à personne.

  17. #17
    Membre chevronné
    Avatar de Joel F
    Homme Profil pro
    Chercheur en informatique
    Inscrit en
    septembre 2002
    Messages
    918
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Chercheur en informatique
    Secteur : Service public

    Informations forums :
    Inscription : septembre 2002
    Messages : 918
    Points : 1 921
    Points
    1 921
    Par défaut
    Citation Envoyé par bruno_pages Voir le message
    vous savez de combien de milliers d'applications est constituer par exemple une distribution Linux ? C'est vous qui allez faire les modifications nécessaires parce que le compilateur créé des incompatibilités ?

    Franchement Je pense être assez bien placé pour parlez de ce qu'est la compatibilité car j'en suis à la fois acteur avec Bouml et victime avec Qt.
    Et ? ils sont si fainéant que ça les barbus du kernel que changer leur main ca les fatigue d'avance ? pas mal l comme troupeau de psychorigide.

    En JAVA, y a eu X fois des 'this is deprecated' et personne n'a jamais chialé comme une lycéenne hein ...

  18. #18
    Expert confirmé

    Profil pro
    Inscrit en
    février 2006
    Messages
    2 334
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : février 2006
    Messages : 2 334
    Points : 4 604
    Points
    4 604
    Par défaut
    ce que je proposais ne se résume pas qu'à un changement dans le main;

    unifier les noms des variables, constantes, fonctions ..., parce qu'entre les setw, setprecision, regex_match (pour exemple) parce qu'on peut pas dire qu'il y ait une convention de nommage cohérente.

    bannir l'utilisation des char*, véritable nid à emmerdes, il y a un type string maintenant, autant s'en servir.

    pareil pour les tableaux, vector est quand même plus souple et sécuritaire dans l'utilisation.

    donc ça ne serait pas que des changements mineurs.

  19. #19
    Expert éminent

    Inscrit en
    novembre 2005
    Messages
    5 145
    Détails du profil
    Informations forums :
    Inscription : novembre 2005
    Messages : 5 145
    Points : 6 911
    Points
    6 911
    Par défaut
    Citation Envoyé par stardeath Voir le message
    incompatibilités? je les cherche toujours, le code c++98 sera compilé en capacité c++98 et le c++0x le sera en 0x, puisque de toute façon on fera une édition de lien comme avant sans que ça change un broc.

    un peu de dépoussiérage ne fera pas de mal à personne.
    1/ Je doute qu'on arrive à une situation où on pourra faire une édition de liens entre des fichiers compilés en C++98 et d'autres en C++0X, et mon doute est encore plus important si on fait usage de la bibliothèque standard des deux côtés.

    2/ S'il n'y a pas de voie d'évolution douce de C++98 en C++0X, C++0X sera un échec. Et une voie d'évolution douce implique de pouvoir compiler du C++98 avec un compilateur C++0X sans modification pour se mettre à utiliser C++0X petit à petit.
    Les MP ne sont pas là pour les questions techniques, les forums sont là pour ça.

  20. #20
    Expert éminent

    Inscrit en
    novembre 2005
    Messages
    5 145
    Détails du profil
    Informations forums :
    Inscription : novembre 2005
    Messages : 5 145
    Points : 6 911
    Points
    6 911
    Par défaut
    Citation Envoyé par Joel F Voir le message
    Et ? ils sont si fainéant que ça les barbus du kernel que changer leur main ca les fatigue d'avance ? pas mal l comme troupeau de psychorigide.

    En JAVA, y a eu X fois des 'this is deprecated' et personne n'a jamais chialé comme une lycéenne hein ...
    Une norme qui ne permet pas une transition douce ne sera pas utilisée en entreprise. Et vu que ce sont elles qui financent et les gens qui sont dans le comité et les compilateurs, il y a peu de risques que ce besoin ne soit pas pris en compte.

    (Merci de confirmer en passant que Java c'est pour les programmes jetables).
    Les MP ne sont pas là pour les questions techniques, les forums sont là pour ça.

Discussions similaires

  1. Final Committee Draft disponible
    Par Jean-Marc.Bourguet dans le forum C++
    Réponses: 3
    Dernier message: 31/03/2010, 12h18
  2. Silverlight 3 disponible en version finale
    Par Jérôme Lambert dans le forum Silverlight
    Réponses: 29
    Dernier message: 01/10/2009, 11h25
  3. Gajim version 0.12 finale disponible
    Par aodix dans le forum Internet
    Réponses: 0
    Dernier message: 19/12/2008, 18h05
  4. mandriva est il disponible dans sa version finale ?
    Par kerkennah dans le forum Mandriva / Mageia
    Réponses: 7
    Dernier message: 25/05/2007, 22h37
  5. [Info] Virtual PC 2007 disponible en version finale
    Par al1_24 dans le forum Autres Logiciels
    Réponses: 8
    Dernier message: 23/03/2007, 08h55

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