mercredi 30 septembre 2020

Le comité C++ prend enfin les vrais problèmes à bras le corps !

J'avoue, il m'arrive parfois de me planter lamentablement et d'initialiser une std::string avec un pointeur null. Comme ça marche avec un char *, on ne fait pas attention, et hop !

std::string a(nullptr);

Le souci, c'est que c'est un comportement non défini. Dans la pratique, ça crashe. Mais ne craignez rien ! Cette proposition suggère la mise en place d'une surcharge supprimée prenant un nullptr:

constexpr basic_string(nullptr_t) = delete;

Simple, mais génial: quand on passe un pointeur null, c'est cette surcharge, meilleure, qui est choisie, et ensuite le compilo hurle parce que la méthode est supprimée. Alors certes, ça ne couvre pas le cas où l'on passe une variable pointeur initialisée à null, parce que le compilo, même s'il pouvait déduire à la compilation que le pointeur est nul, doit quand même choisir la surcharge char *. Mais ça couvre quand même tout un tas de cas stupides qui ne peuvent clairement pas marcher.

Je soutiens unilatéralement cette proposition, et j'espère qu'elle atterrira dans C++23 !

samedi 5 septembre 2020

Petit vol tranquille à Annecy

Il n'y a pas que Flight Simulator 2020 qui sait montrer de jolis décors ! En combinant X-Plane avec XEurope et une tuile Orthophoto, voici une plaisante soirée à Annecy.

jeudi 3 septembre 2020

Taylor Swift dans Blender - On se la retente

Je reprends mes tentatives de modéliser la chanteuse. C'est pas comme si on la reconnaissait du premier coup d'oeil, mais il faut bien démarrer quelque part. Je ne suis pas mécontent du nez, mais les joues sont peut-être un petit peu creuses. Par rapport à ma précédente tentative, je tente de faire l'ensemble du modèle d'une seule pièce. Il va donc falloir connecter ce cou aux épaules, et puis faire tout le reste... Et ne pas oublier les oreilles, sauf à lui faire une chevelure suffisamment touffue pour les cacher.

Ça ne sera pas à utiliser en gros plan, mais de loin, peut-être qu'il y aura quelque chose à en tirer.