C++/Python wxWidgets3/wxPython4 avec CodeBlocks et pybind11

Au travers de l’application wxCppPy je vais vous apprendre à créer une application wxWidgets qui charge des scripts python et qui se laisse modifier et manipuler par wxPython. A savoir que wxPython4, qui porte le nom de version Phoenix, ne possède plus d’exemple pour interfacer wxPython avec wxWidgets. Je vais donc vous expliquer comment y parvenir.

Lire la suite

.template

Voici un bout de code décrivant un cas concret où j’ai dû apprendre à utiliser l’instruction.

.template

Avant de lire ce bout de code, je vous conseil de lire la faq de developez qui explique très bien à quoi sert l’instruction .template.

L’objectif du bout de code suivant est de définir un traitement commun pour différent type de fichier 3D. C’est une version simplifier de ce que j’ai eu à faire. Ici il n’y a pas beaucoup de sens à utiliser un template T_Mesh mais le sujet est de montrer un cas d’utilisation de l’instruction .template. A la fin de l’article je vous ai ajouté la version original des classes Mesh et Vertex ceci pour donner un peu plus de sens à l’utilisation de ce bout de code.

Vous pouvez retrouver le code sur CppShell.

Lire la suite

Implémenter Pi avec un template

L’idée est d’utiliser acos(-1) qui donne pour résultat le nombre pi. Pour ce faire -1 sera converti en type T. J’utilise acos de l’en-tête cmath. On remarquera que acos est défini pour les types float, double et long double, en c++11 il peut prendre en entré des types entiers pour retourner des doubles.

template<typename T>
T Pi()
{
    return acos(static_cast<T>(-1.0));
}

Lire la suite