Notes sur le processus de compilation avec GCC/Clang

C++, Qt, OpenGL, CUDA

Cet article de blog est surtout destiné à me servir de notes, pour expliquer le processus de compilation d’un programme dans mon cours C++. Il est basé sur la vidéo : « Hello, world? » — What really happens when you compile & run a simple program.

N’hésitez pas à partager d’autres sources ou informations sur le processus de compilation.

View original post 2 191 mots de plus

Publicités

Points de variation et ADL

Eric Niebler a écrit un nouvel article à propos des fonctions introduisant des points de variation dans le code générique et de leur utilisation en deux étapes à cause de l’ADL. L’exemple qu’il donne est celui de la fonction swap, puis dans la suite de begin/end. A l’heure actuelle l’utilisation de telles fonctions se fait en deux étapes :

using std::swap;
swap(/*stuff*/);

Pour permettre à l’ADL de sélectionner la bonne version de swap, c’est à dire celle qui est dans le même namespace que le type de vos paramètres si elle existe, ou la version générique dans le namespace std si il n’y a pas de version particulière.

La proposition de Eric Niebler consiste à introduire std::begin comme foncteur (dans le sens un objet se comportant comme une fonction), et à lui laisser le soin de faire l’appel depuis un point où toutes les versions seront prises en compte.

L’article à cette adresse.

Module Range

Depuis le début de l’année, Eric Niebler a écrit plusieurs billets à propos du concept de range pour le C++. Le dernier billet en date annonce la publication d’une proposition pour l’ajout de ce concept dans la bibliothèque standard.

La parenté avec ce que propose boost.range est évident (il y a surement des différences, mais n’ayant pas encore lu l’ensemble de la proposition, je ne vais pas m’avancer) et cette nouvelle m’envoie ravir. Les lambdas du C++11 avaient déjà permis d’améliorer l’utilisabilité des algorithmes de la bibliothèque standard, avec un concept de range dans la bibliothèque standard leur utilisabilité sera décuplée.

Liens : La proposition et l’implémentation

Transfère des tutoriels sur un wiki

C++, Qt, OpenGL, CUDA

Bonjour à tous

Les tutoriels sur internet sont une source d’information et d’auto-formation très intéressante sur internet. Cependant, il faut reconnaître qu’il est difficile de trouver des tutoriels de qualité, on doit souvent se contenter de tutoriels de qualité plus ou moins bonne, plus ou moins bien rédigés, plus ou moins exacts.

View original post 336 mots de plus

C++1y – Les tableaux

C++, Qt, OpenGL, CUDA

Cet article a été transféré sur mon wiki, il ne sera pas mis à jour sur ce blog. Je recommande de lire la nouvelle version sur la page suivante : C++1y – Les tableaux.

Pour commencer le tour des nouvelles fonctionnalités proposées par les prochaines normes du C++ (je parle au pluriel puisqu’il devrait y avoir la sortie d’une nouvelle norme, le C++14, et de plusieurs Technical Specification. Voir mon article précédent pour les détails), je vais faire le tour des différents TS avant d’aborder les détails du C++14. Enfin, je terminerais par faire une review des différents drafts pour le meeting de  Issaquah. Dans ce second article, je vais donc parler des nouvelles fonctionnalités concernant les tableaux :

  • N3820, qui devrait sortir sous forme de TS cette année (ce TS devait initialement faire partie du C++14). Ce TS ajoute le support des tableaux de taille connue…

View original post 3 993 mots de plus

Lambda polymorphique du C++14

Introduction

J’avais déjà abordé dans un article précédent les limites des lambdas du C++11. Le C++14 offre maintenant des lambdas polymorphiques qui suppriment cette limite. A la place de reprendre les exemples que j’avais élaboré lors de ce premier article, je vais plutôt réécrire la partie de mon article Comportement dynamique qui implique l’utilisation d’une lambda polymorphique.

Lire la suite

Coder efficacement : Bonnes pratiques et erreurs à éviter en C++

C++, Qt, OpenGL, CUDA

J’avais déjà parlé du livre Coder efficacement : Bonnes pratiques et erreurs à éviter en C++. Ce livre a été écrit par Philippe Dunski, que vous connaissez peut-être si vous fréquentez le forum C++ de Developpez.com, sous le nom koala01. Il vient également d’ouvrir un blog personnel.

Le livre est publié par mon éditeur, D-Booker.fr, et sort le 14 février. N’hésitez pas à l’acheter (je ferais peut-être une review quand je l’aurais lu).

View original post