Ce répertoire contient des images sous licence libre a propos du C++
Auteur | Contribution | Licence |
---|---|---|
Oliver H | Ébauche | CC-BY-SA-3.0 |
AKP | Dessin à la main | CC-BY-SA-3.0 |
Oliver H | Numérisation et textes | CC-BY-SA-3.0 |
Dave | Note repositionnable jaune (post-it) | CC0 Public Domain |
thep | police de caractères Purisa | GPL v2 |
Deux collègues discutent :
- C++ est enfin sorti
- Trop top
- Va falloir se palucher les 1600 pages du standard C++17
- Gloups
Une note repositionnable (post-it) à la fin du dessin indique : "Il y en a qui ne connaissent pas encore LinuxFr.org" (LinuxFr.org peut être remplacé par C++FRUG...)
La réalisation de cette image s'est basée principalement sur deux logiciels :
- potrace (vectorisation) ;
- inkscape.
Quatre variantes :
- L'ébauche originelle au crayon ;
- La version SVG avec les balises
<text>
et donc nécessite de la présence de la police Purisa ; - Celle avec les textes remplacés par des chemins
<path>
donc ne pouvant plus être édités ; - Celle pour une conférence C++Frug
Auteur | Contribution | Licence |
---|---|---|
Jae-Zun | Prototypage | CC-BY-SA-3.0 |
Florent B | Dessin à la main | CC-BY-SA-3.0 |
Oliver H | Numérisation et textes | CC-BY-SA-3.0 |
thep | police de caractères Purisa | GPL v2 |
Analogie entre chaque version C++ et l'évolution de l'homme. Le singe est associé à "C with Classes", puis "C++2.0" et "C++98" pour des ancêtres plus proches de homo sapiens qui se redressent de plus en plus. Après homo sapiens (C++03), les descendants se courbent de plus en plus (C++11, C++14) pour se retrouver devant un ordinateur (C++17). Au dessus de ce dernier homme, un texte "Cool On va pouvoir coder".
La réalisation de cette image s'est basée principalement sur quatre logiciels :
- potrace (vectorisation) ;
- inkscape ;
- meld (pour comprendre ce que inkscape rajoutait dans le SVG) ;
- geany (pour supprimer les parties inutiles du contenu SVG).
Deux versions :
- L'originale avec les balises
<text>
et donc dépend si la police Purisa est installée sur la machine ; - Celle avec les textes remplacé par des chemins
<path>
donc on ne peut plus éditer les textes.
Auteur | Contribution | Licence |
---|---|---|
Oliver H | Dessin, textes, numérisation, vectorisation | CC-BY-SA-3.0 |
Analogie entre les fonctionnalités promises pour C++17 et les promesses des candidats à la présidentielle de 2017 en France.
La réalisation de cette image s'est basée principalement sur deux logiciels :
- potrace (vectorisation) ;
- inkscape.
Auteur | Contribution | Licence |
---|---|---|
Oliver H | Idée, dessin et textes | CC-BY-SA-3.0 |
H. Harendal (ADF) | Police Gillius N°2 inspirée de Gill Sans | GPL v2 (avec exception) |
thep | Police de caractères Purisa | GPL v2 |
En 2003, Bjarne Stroustrup propose la première version des Concepts. Ce "comic strip" imagine alors Bjarne demander l'intégration des Concepts pour chacune des versions de C++ : C++03, C++11, C++14, C++17... et à chaque fois les Concepts ne sont pas intégrés. Sur la dernière vignette, les Concepts sont enfin intégrés (de très nombreuses décennies plus tard). Sur cette dernière vignette est dessinée une pierre tombale avec une voix qui sort "Ce n'est pas trop tôt !".
La réalisation de cette image s'est basée sur quatre logiciels :
- inkscape (pour le dessin vectoriel initial) ;
- geany (pour les améliorations manuelles dans le XML générés par inkscape) ;
- gimp & potrace (tentative de conversion des textes en path au lieu d'utiliser inkscape).
Deux versions :
- L'originale avec les balises
<text>
nécessite l'installation des polices de caractères Purisa et Gillius, ainsi que le support des attributsletter-spacing
etword-spacing
(firefox ne le supporte pas, du moins pas en 2016) ; - Celle avec les balises
<text>
remplacées par des chemins<path>
(10 foix plus volumineuse, mais les<path>
de mêmes caractères ne sont pas réutilisés).
Auteur | Contribution | Licence |
---|---|---|
Guss | Idée d'un chaton triste Concept & Réflexion | |
Ziyue | Dessin à la main (crayon) | CC-BY-SA-3.0 |
Oliver H | Numérisation, changements importants et textes | CC-BY-SA-3.0 |
Deux chatons déçus du contenu de C++17 discutent :
- Sniff.. On n'a pas les Concepts
- Ni la Réflexion
La réalisation de cette image s'est basée principalement sur deux logiciels :
- GIMP ;
- G'MIC (Vector painting) .
Ci-dessous le dessin original dessinée par Ziyue avant les améliorations réalisées avec GIMP et G'MIC. Cette image est au format WebP afin de limiter les fichiers binaires dans le dépôt Git. Chromium supporte depuis longtemps le format WebP, et Firefox devrait bientôt le supporter aussi.
Auteur | Contribution | Licence |
---|---|---|
Ziyue | Dessin à la main (crayon) | CC-BY-SA-3.0 |
Oliver H | Numérisation, changements importants et textes | CC-BY-SA-3.0 |
Une maîtresse est atterrée que son élève ait rédigé sa punition en C++ avec une boucle qui écrit 100 fois "Je ne dois pas jeter d'avion en papier en classe". A teacher is appalled her student has written her punishment in C++ using a loop writing 100 times "I do not throw paper plane in class" in French.
La réalisation de cette image s'est basée principalement sur deux logiciels :
- GIMP ;
- G'MIC (Vector painting) .
Le fichier source au format XCF pèse 104 Mo (8466 × 4505 pixels) :
https://commons.wikimedia.org/wiki/File:Cpp-ecole-primaire_copyright-Ziyue-OliverH-2016_CC-BY-SA-3.xcf
Six images générées = deux format (JPEG et WebP) et trois codes C++ écrits sur le tableau :
- en utilisant
int i=0
(C++98) ; - en utilisant
auto i{0}
(C++17) ; - en utilisant
std::fill_n()
(idée de devnewton).
Auteur | Contribution | Licence |
---|---|---|
Oliver H | Idée, dessin et textes | CC-BY-SA-3.0 |
L'adage "Compilé c'est Testé, Linké c'est Livré"
est possible pour le C++ en codant sa lib en constexpr
et ses tests unitaires en static_assert()
.
La réalisation de cette image s'est basée sur quatre logiciels :
- inkscape (pour le dessin vectoriel initial) ;
- scour (pour améliorer le fichier XML produit par inkscape) ;
- geany (pour finaliser les améliorations manuellement) ;
- meld (pour contrôler les changements à chaque étape).
Deux versions :
- Le brouillon original matricielle ;
- La version vectorielle.
Auteur | Contribution | Licence |
---|---|---|
Oliver H | Idée, dessin et textes | CC-BY-SA-3.0 |
Le livre de référence du C++ par Bjarne Stroustrup contient une erreur.
Pas de soucis : pour corriger la situation, on change le langage !
La réalisation de cette image s'est basée sur quatre logiciels :
- Simple Scan pour la numériqason ;
- Krita pour la retouche et les textes ;
- GREYC's Magic for Image Computing pour son filtre Vector Painting ;
Auteur | Contribution | Licence |
---|---|---|
lmg HS | Idées | - |
Oliver H | Dessin | CC BY-SA 4.0 |
FreeSeamlessTextures.com | Texture | CC BY |
Émilie | Suggestions d'améliorations | - |
Cette illustrations contient de nombreux messages.
Deux prisons sont représentées en arrière plan. La première est celle des fonctions membres. La seconde prison est celle des spécifications techniques (TS) qui ne sont pas (encore) intégrées au standard. Un bonhomme derrière les barreaux de cette prison représente le TS "Unified Call Syntaxe". Celui-ci se dit qu'il vient de prendre trois ans ferme (car il n'a pas été intégré Au C++17, et il sera peut être intégré à C++20).
Trois bonhommes sortent de la première prison : empty()
, data()
et size()
car ces fonctions deviennent également des fonctions libres à partir de C++17. Voici leur dialogue :
empty()
: Que faire maintenant que nous ne sommes plus cantonnés aux classes ?data()
: Étendre les autres types d'objet.size()
: Et faciliter la programmation générique.
Dehors, les attendent deux filles : begin()
et end()
. Ces deux fonctions étaient les seules fonctions membres à avoir été devenues également fonctions libres (C++11). La fonction begin()
leur fait signe et leur dit "Coucou, par ici les fonctions libres". Quant à la fonction end()
, elle accueille une autre fille en lui disant "Salut string_view
". Cette fille s'oriente vers end()
et tourne le dos au lecteur qui remarque son pantalon taille basse et son string.
La réalisation de cette image a pu être possible grâce à plusieurs logiciels libres :
- Simple Scan
- GIMP
- Inkscape
- Scour
- Geany