User-defined literals

image1

source image

I deem this definition of a literal relevant:

Literal constants are invariants whose values are implied by their representations.

Literals are useful:

float million = 1e6;

C++11 now offers user-defined literals, which will be very handy, and not only as syntactic sugar. Consider the simple example of manipulating ...

more ...

C++11: Variadic templates

image1

Image originale ici

L'introduction de C++11 apporte dans son jeu de nouvelles fonctionnalités les variadic templates, qui permettent de spécifier des paramètres de patrons à géométrie variable. Voici un exemple qui illustre l'avantage des variadic templates comparé aux méthodes "classiques", pour pallier à un problème courant : utiliser ...

more ...

De la réelle action d'un opcode...

Date By Fred
Un bureau avec des livres ouverts

... ou "vive les docs !"

Prenons par exemple le bout de code suivant :

#include <iostream>

#include <stdint.h>
int main(){
    uint64_t result63;
    uint64_t shift63=63;
    result63 = (1L<<shift63)-1;

    uint64_t result64;
    uint64_t shift64=64;
    result64 = (1L<<shift64)-1;

    uint64_t result65;
    uint64_t shift65=65;
    result65 = (1L<<shift65)-1;

    std::cout<<std::hex ...

more ...

Petit défi de mathématiques appliquées

Date By Fred
Un jeu de dés opérateurs

On dispose des opérateurs suivants :

  • * qui multiplie des nombres entiers NON signés
  • / qui divise des nombres entiers NON signés (on perd le reste)
  • << et >> décalage de bits à gauche / droite
  • + addition d'entiers
  • - soustraction d'entiers
  • & et logique
  • | ou logique
  • MSB() : retourne le bit de poids fort (0 ou 1 ...

more ...