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

Vous êtes nouveau sur Developpez.com ? Créez votre compte ou connectez-vous afin de pouvoir participer !

Vous devez avoir un compte Developpez.com et être connecté pour pouvoir participer aux discussions.

Vous n'avez pas encore de compte Developpez.com ? Créez-en un en quelques instants, c'est entièrement gratuit !

Si vous disposez déjà d'un compte et qu'il est bien activé, connectez-vous à l'aide du formulaire ci-dessous.

Identifiez-vous
Identifiant
Mot de passe
Mot de passe oublié ?
Créer un compte

L'inscription est gratuite et ne vous prendra que quelques instants !

Je m'inscris !

C++0x : fin des discussions techniques pour la nouvelle normalisation

Le , par Arzar

5PARTAGES

1  0 
THIS IS IT !!

Howard Hinnant, le président du Library Working Group du comité C++ vient de lâcher le morceau sur Stack Overflow !!

Le draft final est terminé !!

Il sera rendu officiel et public le 13 avril. Pour compléter le processus ISO il reste encore quelques formalités administrative mais c'est une étape purement bureaucratique, car du point de vue technique c'est fini !

Une erreur dans cette actualité ? Signalez-nous-la !

Avatar de Obsidian
Modérateur https://www.developpez.com
Le 05/09/2011 à 12:36
Citation Envoyé par koala01 Voir le message
Là s'arrête à peu pres la liste du public potentiel de la liste, et tu remarqueras que cela ne fait malgré tout pas grand monde, surtout lorsque l'on sait que seules les trois première catégories sitées sont réellement susceptibles de vouloir l'obtenir
À dire vrai, cette distribution est due en grande partie au prix prohibitif de la norme. Si celle-ci était disponible gratuitement, elle serait référencée un peu partout et le nombre de gens qui finiraient par y aboutir serait beaucoup plus conséquent.

J'avoue bien humblement que j'ai moi-même commencé à lire les normes C et C++ en arrivant sur Développez et aujourd'hui, je ne conçois pas de faire autrement.

Le problème avec les organismes de normalisation (ou les offices de brevets) qui se paient sur les documents qu'ils publient est que le contenu de ces documents est censé être suivi par tous les gens qui souhaitent programmer avec ces langages. C'est vrai en informatique, mais c'est encore plus vrai dans d'autres domaines. La C15-100, par exemple, devrait être suivie par quiconque refait son électricité chez soi, pour des raisons de sécurité. Et pour cette dernière raison, elle ne devrait pas être en accès restreint, et encore moins inaccessible de fait pour des raisons tarifaires.

Je me souviens qu'étant adolescent, je m'intéressais à la norme V.23 pour essayer de me bricoler un petit modem « pour l'exercice ». C'est à cette occasion que j'ai découvert les prix pratiqués par l'UIT (ex CCITT) (bon, depuis, celle-ci est devenue disponible gratuitement).

Mais même si une norme n'est pas un document d'apprentissage, cela devrait néanmoins être un vademecum pour tous une fois un certain niveau de maîtrise atteint (comprendre par là, une fois que l'on est capable d'écrire un « Hello World » seul :-) ).
5  0 
Avatar de Goten
Membre chevronné https://www.developpez.com
Le 29/03/2011 à 18:22
Citation Envoyé par r0d Voir le message
Au fait, ce nouveau standard ne permet toujours pas de faire:
Code : Sélectionner tout
std::vector< MaClasseTemplate< UnType > >


Parce que les variadic templates m'ont induit en erreur, et je suis un peu perdu

Sinon, visual 2010 implémente pas encore final et override
tu peux même le faire en c++98 ça..
4  0 
Avatar de 3DArchi
Rédacteur https://www.developpez.com
Le 30/03/2011 à 18:21
non. Ca rend l'écriture un peu moins absconse
3  0 
Avatar de Hinault Romaric
Rédacteur https://www.developpez.com
Le 29/03/2011 à 15:10
Le comité ISO C++ valide le Draft final de la norme C++ 0X
il sera publié officiellement dans les mois avenir

Mise à jour du 29/03/11, par Hinault Romaric

Les travaux pour la définition de la nouvelle norme pour le langage de programmation C++ sont enfin achevés et validés.

La norme, qui remplacera celle de 1997, et dont la publication initiale était prévue au plus tard pour 2010, vient de franchir un cap majeur. Le comité de normalisation ISO C ++ vient en effet d'approuver les dernières modifications techniques lors d'une réunion qui s'est tenue du 21 au 25 mars à Madrid en Espagne, sur le Draft final (Final Commitee Draft) et sur un Draft international (Final Draft International Standard - FDIS).

Pour Herb Sutter, président du comité ISO C++, le FDIS est de «très bonne qualité », ce qui en quelque sorte pourrait justifier le retard accusé dans sa validation. « Nous avons pris beaucoup plus de temps pour produire la seconde norme du C++. C'est en partie à cause de ses fonctionnalités ambitieuses, et surtout sa qualité [...] Cette norme est largement considéré comme le document FDIS de plus haute qualité que nous n'ayons jamais élaboré » écrit-il sur son blog.

Au menu, des changements comme l'abandon des clauses new et explicit pour la gestion des overload, la rationalisation de l'utilisation de noexcept dans la bibliothèque ou la modification des règles de recherche de Begin et end pour un range-for.

On notera également la suppression de plusieurs spécifications jugées obsolètes.

La publication officielle de la norme est prévue pour cette année, si le FDIS est validé lors d'une ultime réunion à Genève.

Le nouveau standard aura finalement pour nom de code C++ 2011., mettant ainsi fin à toutes les spéculations. Et à toutes les plaisanteries.

Source : Blog Herb Sutter

Et vous ?

Que pensez-vous de cette nouvelle norme?
2  0 
Avatar de Firwen
Membre expérimenté https://www.developpez.com
Le 29/03/2011 à 15:42
Aprés Duke Nukem forever, C++ 2011.

Vraiment une sale année pour les trolls 2011

Que du bon, vivement une implémentation à 100% dans GCC, j'en salive déja sur mon clavier
2  0 
Avatar de yan
Rédacteur https://www.developpez.com
Le 29/03/2011 à 17:52
Citation Envoyé par r0d Voir le message
Au fait, ce nouveau standard ne permet toujours pas de faire:
Code : Sélectionner tout
std::vector< MaClasseTemplate< UnType > >

Comment cela?
2  0 
Avatar de Klaim
Membre expert https://www.developpez.com
Le 30/03/2011 à 16:25
C'était l'un des attributs qui sont passé en mots-clés récemment.

Personellement je pense que, utilisé avec beaucoup de parcimonie, ça peut être utile, notemment pour les conteneurs de la stl que certains débutants ont tendance a prendre comme base d'autres classes... le souci c'est surtout que rien ne te dit (sauf warning de certains compilateurs) que tu ne devrais pas hériter d'une classe sous pretexte que tupeux, au risque d'avoir des problèmes obscures au runtime (parceque le destructeur de la classe de base n'est pas virtuel.
Là ce serait un moyen de dire explicitement : non.

Mais il est facile d'abuser de ce genre de feature.
2  0 
Avatar de Goten
Membre chevronné https://www.developpez.com
Le 30/03/2011 à 19:43
Citation Envoyé par r0d Voir le message
Concernant les templates, en fait je me suis mal exprimé, je voulais parler de vecteur (ou n'importe quel conteneur template) contenant une classe template non spécialisée. Par exemple:
Code : Sélectionner tout
1
2
3
4
5
6
7
8
template <typename T>
class MaClasseTemplate
{
//...
};

// puis ailleurs:
std::vector< MaClasseTemplate >;
Je ne sais pas pourquoi, j'avais compris que les variadic templates servaient à résoudre ce problème. Sans doute est-ce mon anglais (approximatif) qui m'a joué un tour.
Y'a les template typedef.

[/HS]
Mais alors du coup, les variadic template ça rend obsolète les typelist? (comme vous le voyez, les templates c'est pas mon truc )
Non.

@guillaume : les typelists c'est pas destiné uniquement à émuler les variadic templates ... (et pire ont a de meilleure méthode pour le faire).
2  0 
Avatar de JolyLoic
Rédacteur/Modérateur https://www.developpez.com
Le 05/05/2011 à 14:27
Je n'étais pas présent lors de sa discussion... Mais je pense qu'il était un peu naïf

De mémoire, mes réflexions quand je l'avais lu, c'est que les remarques sont mal ciblées pour une discussion en comité C++ : Et s'adressent à la version C++98, et non à la target en cours, et considèrent certaines implémentations du langage, au lieu de s'adresser au langage lui même :

Par exemple, sur l'aspect allocateur, il y a déjà eu beaucoup de boulot pour C++0x (avec les scoped allocators, poussés en avant entre autre par Bloomberg). Je ne sais pas s'ils répondent au besoin EA, mais je crois qu'ils ne sont pas discutés dans le document correspondant. D'autres points sont liés à C++98, et sont déjà corrigés dans C++0x, du coup, le document apporte peu (sauf s'il disait que les corrections apportées posaient encore problème).

Une autre partie des problèmes annoncés est lié à la présence de mauvais compilateurs, ne respectant pas bien ou pas efficacement la norme. On peut imaginer que dans ce cas la réponse soit plutôt "faites pressions sur vos implémenteurs, plutôt que de vouloir contourner ça dans la bibliothèque".

Quels sont les points que tu considères les plus utiles dans EASTL ?
2  0 
Avatar de koala01
Expert éminent sénior https://www.developpez.com
Le 05/09/2011 à 8:50
Le fait est que la norme n'est franchement pas destinée à être lue par tout le monde et n'importe qui, ne serait ce qu'à cause des références croisées qui rendent vraiment sa compréhension globale des plus ardues:

Au premier rang, tu as les développeur de compilo : s'il y a un groupe qui doit l'utiliser, c'est bien celui-ci, mais je ne serais pas étonné qu'il n'y ait qu'une copie achetée de la norme par entreprise travaillant dans le domaine et mise "sur le réseau" pour permettre aux collaborateurs d'y accéder.

Juste en dessous, tu as quelques "pontes" (de Zutter, stroutroup, et autres) qui vont la décortiquer et essayer de faire des articles (ou des livres) de "vulgarisation". Je n'ai pas la prétention de tous les connaitre, mais s'il doit y avoir une vingtaine de types comme cela à travers le monde, c'est sans doute beaucoup.

Un peu plus loin, tu as un certain nombre, mais pas énormément malgré tout, de gens qui vont y plonger "à la demande" pour apporter une réponse précise à une question précise...

Il doit y en avoir cinq ou six à peine sur developpez, dont certains sont surement actif sur d'autres forums

Puis on croisera quelques personnes comme toi (et ce n'est qu'une constatation, bien loin d'être une attaque, hein ) qui s'intéressent à la norme, qui essayent de la comprendre et de l'utiliser, qui posent des questions dessus, mais qui ne l'ouvriront sans doute jamais, pour des raisons qui leur sont propres.

Enfin, nous trouverons de nombreuses personnes qui seront contentes d'obtenirs des informations sur la norme, mais qui ne "vivent pas beaucoup plus mal" le fait de ne pas en avoir : c'est juste un "plus" pour eux que d'apprendre que ce qu'ils font est (ou n'est pas) standard, et il tenteront (ou non) de s'en approcher

Là s'arrête à peu pres la liste du public potentiel de la liste, et tu remarqueras que cela ne fait malgré tout pas grand monde, surtout lorsque l'on sait que seules les trois première catégories sitées sont réellement susceptibles de vouloir l'obtenir

(Beaucoup) plus loin de ces catégories, il y a les gens qui vont simplement suivre ce qu'on leur dit sur les forums, sans s'inquiéter du tout de la norme.

Quand ils ne se fient, purement et simplement qu'à ce que leur donne l'intellisens, en n'imaginant, au pire, même pas une seconde que les fonctions préfixées du double underscore sont des fonctions propres à l'implémentation, et donc susceptibles de provoquer des problèmes de compatibilité avec d'autres systèmes, dont ils n'ont de toutes manières que faire.
2  0