Les patrons variables du C++11 : 2 – Idiomes courants

Magazine
Marque
GNU/Linux Magazine
Numéro
160
Mois de parution
mai 2013
Domaines


Résumé
Le premier article de cette petite série s'était attaché à définir ce que sont les patrons variables du langage C++, tels que définis dans le dernier standard du langage sorti fin 2011. Nous allons maintenant voir quelques techniques usuelles lorsque l'on se trouve à devoir manipuler des paquets de paramètres de patrons.

La dernière fois, nous avions terminé sur une possibilité pour obtenir une sorte de parcours des éléments d'un paquet, en les envoyant un à un à une fonction. Toutefois, la solution n'était pas satisfaisante, car elle pouvait nécessiter la définition d'un intermédiaire artificiel. Heureusement, d'autres solutions existent, qui ne sont pas sans rappeler les techniques habituellement mises en œuvre dans les langages fonctionnels comme Erlang ou Haskell pour parcourir les éléments d'une liste.

1 Extraction du premier élément

Procédons par étapes. Dans un premier temps, étant donné un paquet de paramètres (de valeurs pour commencer), l'objectif est d'en extraire le premier élément. Supposons un patron variable de classe comme celui-ci, dont le nom sera justifié un peu plus loin :

template<int... INTS>

struct Sum;

Déclarons maintenant une spécialisation de ce patron :

template<int HEAD, int... TAIL>

struct Sum<HEAD, TAIL...>

{

  static constexpr int value = HEAD;

};

Toute la...

Cet article est réservé aux abonnés. Il vous reste 95% à découvrir.
à partir de 21,65€ HT/mois/lecteur pour un accès 5 lecteurs à toute la plateforme
J'en profite


Articles qui pourraient vous intéresser...

Implémentation du calcul symbolique et de la dérivation en Java

Magazine
Marque
GNU/Linux Magazine
Numéro
243
Mois de parution
décembre 2020
Domaines
Résumé

Les logiciels de calcul symbolique sont relativement abondants. Pour les curieux ou ceux qui voudraient intégrer ce type de fonctionnalités dans leurs propres programmes, nous allons essayer de lever une partie des mystères des théories et des problèmes qui se cachent derrière la création de ces systèmes.

Déboguez vos codes PHP

Magazine
Marque
GNU/Linux Magazine
Numéro
243
Mois de parution
décembre 2020
Domaines
Résumé

La mise au point de programmes PHP est parfois perçue comme archaïque, car la configuration d’un environnement efficace de debugging peut s’avérer déroutante. Voici comment paramétrer une confortable installation pour profiter pleinement d’outils professionnels et maîtriser le développement local ou distant.

Utiliser Visual Studio Code pour coder en Python

Magazine
Marque
GNU/Linux Magazine
Numéro
243
Mois de parution
décembre 2020
Domaines
Résumé

Comme Batman a Robin, Rocket Raccoon a Groot, le développeur a l’éditeur de code. Sans son plus fidèle acolyte, impossible d’écrire la moindre ligne de code... d’où l’importance d’être toujours à la recherche de l’outil le plus efficace qui soit, quitte à délaisser un vieux compagnon de route...