La sortie de Qt 5.1 est prévue en release candidat pour le 27 mai. Cette version propose le support d’Android et iOS, bien qu’il était déjà possible de porter sur Android avec Qt 4.8 et le projet Necessitas. Je vais vous présenter ici comment créer une application Qt pour Android sous Ubuntu 13.04.
Archives pour la catégorie C++
Lambdas T() et std::function<const T&>, un mélange dangereux
Le chat de Dvp est le lieu de rendez-vous quotidien des devs C++ et de nombreuses discussions techniques sur le C++ soulèvent des interrogations sur des points particuliers du langage.
Il nous est apparu qu’une faille dangereuse et non détectée par le compilateur résultait de l’utilisation conjointe de la déduction automatique de type retour des lambdas et des std::function<const A&()> qui retournent une référence constante.
Un ColorPicker avec Qt – Benchmark et optimisations
Le sujet du premier exercice proposé par la rubrique Qt de Developpez.com consistait à créer un widget permettant de sélectionner les différentes nuances de gris à partir d’une teinte définie.
Lire la suite
Un ColorPicker avec Qt – Version QML
Cet article est la solution que j’avais proposé à l’exercice Qt sur la création d’un ColorPicker (voir le première article de cette série). Dans cette partie, j’utilise le QML pour créer le ColorPicker.
Lire la suite
Un ColorPicker avec Qt – Version Qt
Cet article est la solution que j’avais proposé à l’exercice Qt sur la création d’un ColorPicker (voir l’article précédent du blog). Il décrit la création d’un widget permettant d’afficher et sélectionner les nuances de gris d’une couleur.
Lire la suite
Un ColorPicker avec Qt – Enoncé de l’exercice
Cet article est une reprise des sujets écris par johnlamericain et des documents que j’avais rédigé pour un exercice Qt. Cette première partie est un rappel (copié-collé) du sujet de l’exercice, posté sur le forum.
Pourquoi le C++ est un langage plus adapté pour les débutants que le C ?
Un adage bien connu dit qu’enseigner, c’est répéter. Ceux qui fréquentent depuis quelque temps le forum C++ de Developpez le savent très bien : on revoit les mêmes discussions revenir régulièrement. Ce billet de blog va tenter d’analyser un peu les arguments concernant l’apprentissage du C++, en se focalisant plus particulièrement sur les difficultés d’utilisation. En particulier le raisonnement suivant, que l’on entend souvent : « il est préférable d’apprendre le C avec le C++ », ainsi que l’affirmation suivante, souvent pas comprise : « le C++ est un meilleur langage pour débuter que le C ».
Lire la suite
Les accesseurs et les détails d’implémentation
C’est une discussion qui revient régulièrement sur le chat de Developpez.com. Une personne demande comment fait-on pour accéder aux variables membres privées d’une classe et on lui répond de créer des getter et setter. Viens alors un C++ien moyen (c’est-à -dire un casse-pied, en général moi) qui hurle au scandale et sort l’adage bien connu : « les accesseurs, c’est le mal ». S’en suit une discussion sur pourquoi les accesseurs sont à éviter, quand j’ai le temps et l’humeur.
Dans cet article, je vais présenter les problèmes que posent les accesseurs concernant l’exposition des détails d’implémentation.
Lire la suite
Les signaux et slots dans Qt5
La nouvelle version de Qt vient de sortir en version 5 alpha. Cette version améliore la prise en charge de la nouvelle norme du C++, le C++11, et modifie ainsi le fonctionnement des signaux et slots de Qt. Cet article fait un rappel sur l’utilisation des signaux et slots et présente les nouvelles fonctionnalités offertes par Qt5.
Lire la suite
Introduction aux geometry shaders
A la demande de LittleWhite, mon premier bloc technique est consacré à l’utilisation des geometry shader. Il n’y a rien de tres compliqué donc je présente un exemple simple apres quelques rappels. Pour ceux qui ne connaissent pas du tout les geometry shaders, je ferais un article plus detaille sur ce sujet.
Pour faire au plus simple, j’utilise Qt et en particulier QShaderProgram, qui gère les geometry shaders depuis Qt 4.7.
Lire la suite