Mes notes C++ à propos de Codingame – Niveau Medium

C’est le second post à propos de Codingame (premier post). Je souhaite juste partager ici mes impressions de codage à propos de Codingame – Niveau Medium.

Avril-Mai 2015 :

Il faut remarquer que Codingame a réorganisé un peu les choses et/ou a créé de nouvelles sections (Optimisation par exemple) ou de nouveaux challenges (APU Init Phase dans la catégorie Medium par exemple) et donc c’est normal si cette page n’est pas totalement « raccord » avec le site.

En Mai 2016 je remarque 3 choses :

  • Cela fait un an que je n’ai pas joué sur Codingame (le temps passe vite…)
  • Plus …

    Lire la suite Mes notes C++ à propos de Codingame – Niveau Medium

  • Programmer un myRIO de National Instruments en C++ moderne

    Je mets ici mes notes d’installation du myRIO, mes tests etc. En fait, j’ai fait des essais avec les exemples ANSI C qui viennent par défaut avec le myRIO et j’ai été confronté à plusieurs soucis :

  • Je ne connaissais pas Eclipse et franchement j’étais un peu perdu dans toutes les options, les menus etc.
  • Je ne comprenais pas vraiment comment les projets ANSI C de NI étaient organisés dans Eclipse. Il me semblait important d’être capable de monter un projet à partir de rien, tout seul, comme un grand.
  • Il n’y a pas de code et/ou d’exemple C++ et donc pas de …

    Lire la suite Programmer un myRIO de National Instruments en C++ moderne

  • Problème avec la Task List de Microsoft Visual Studio 2012

    Y a deux choses à vérifier :

  • Faut aller dans Tools/Options/Text Editor/C/C++/Formatting/Miscellaneous puis s’assurer que l’option » Enumerate Comment Tasks » est bien sur True
  • Ensuite, le truc c’est qu’il faut absolument mettre 2 points ‘:’ accolés après le mot clé TODO. Par contre on peut avoir un espace en le double slash « // » et le mot clé
  • Par exemple :

    1 2 3 // TODO: this is a ToDo… // HACK: this is a Hack… // UNDONE: this does not works…

    J’ai cherché un moment et ça me met vraiment en rogne…

    Lire la suite Problème avec la Task List de Microsoft Visual Studio 2012

    Installer LLVM et Clang sous Debian – Toutes les étapes.

    Voilà les étapes que je suis pour Installer LLVM et Clang.

    J’ai une machine virtuelle avec une Debian 8.

    Dans le cache de apt-get je ne trouve qu’une version 3.5 de clang (apt-cache show clang)

    Je souhaite installer la toute dernière version.

    Je télécharge la version déjà compilée pour Debian 64 de LLVM/Clang (3.9.1 à ce jour) sur llvm.org

    Ensuite je fais :

    1 sudo tar -C /usr/local -xJf clang+llvm-3.9.1-x86_64-linux-gnu-debian8.tar.xz –strip 1

    Et zou c’est terminé. Là où c’est plus « merdique » c’est pour désinstaller. Il faut faire :

    1 2 3 4 5 6 sudo rm …

    Lire la suite Installer LLVM et Clang sous Debian – Toutes les étapes.

    Applications Windows Universelles en C++ avec C++WinRT

    Le projet libre C++WinRT permet d’écrire « en vrai C++ » (et pas avec C++/CX) des applications Windows universelles que l’on peut compiler et déployer sur PC, Android etc…

    Voir le projet : https://github.com/Microsoft/cppwinrt

    Lire l’article : https://msdn.microsoft.com/en-us/magazine/mt745094

    De mon point de vue, il n’y a que du bon dans le projet. En effet, c’est uniquement basé sur des fichiers headers (un peu comme Boost), ça marche, c’est documenté, on fait du C++ « classique » et à priori les développeurs de Microsoft commencent à l’utiliser en interne. Le truc le plus important c’est que c’est que du C++ standard. …

    Lire la suite Applications Windows Universelles en C++ avec C++WinRT

    Mes notes C++ à propos de Codingame – Niveau Easy

    Comme je l’ai dit dans un billet précédent, j’ai découvert la plateforme Codingame en Janvier 2015. Bon, j’ai un job qui me prend pas mal de bande passante, une famille etc. Je ne peux donc pas m’y consacrer 24H/24H alors, les choses avancent doucement… Quoiqu’il en soit, je m’amuse comme un petit fou et je souhaite partager ici mes impressions de codage à propos de Codingame – Niveau Easy.

    Il n’est pas question de publier les solutions (ce ne serait pas drôle sinon) mais juste de documenter ce qui m’a aidé, ce que j’ai appris etc. Je ne vais …

    Lire la suite Mes notes C++ à propos de Codingame – Niveau Easy

    Design Patterns – Strategy – Code source simple en C++

    Je suis en train de relire Head First Design Patterns.

    Ci-dessous vous trouverez ma version du Strategy Pattern en C++(Chapitre 1, page 1). Je ne clame pas que ce soit la meilleure implémentation mais au moins elle fonctionne (apparemment) et je la comprends. Ce n’est déjà pas si mal…

    Contrairement à d’autres code que j’ai pu trouver sur le Web, j’essaie de tout mettre dans un seul code source afin de faciliter la lecture et la compréhension. Ensuite, bien sûr, libre à vous d’exploser tout ça dans différents fichiers…

    Pour information, je suis sous Visual Studio Express 2013. Pour …

    Lire la suite Design Patterns – Strategy – Code source simple en C++

    Design Patterns – Observer – Code source simple en C++

    Je lis toujours Head First Design Patterns. J’en suis au Capitre 2 à la page 37 où l’on parle du Observer. Ce coup-ci j’ai ajouté un peu plus de commentaires dans le code source de mon Observer en C++… Ça ne fait jamais de mal. Cela dit, avec le bouquin ça devrait aller.

    Ce que j’ai retenu

    Plus tard, je vais mettre ici mes notes à propos du Design Patterns en question. Là il n’y a rien car j’ai collé le code et zou, je suis passé à autre chose.

    Le code

    1 2 3 4 5 6 7 …

    Lire la suite Design Patterns – Observer – Code source simple en C++

    Design Patterns – Decorator – Code source simple en C++

    Je lis toujours Head First Design Patterns. J’en suis au chapitre 3, page 79. Je m’attaque donc au Decorator en C++.

    Ce que j’ai retenu

    Plus tard, je vais mettre ici mes notes à propos du Design Patterns en question. Là il n’y a rien car j’ai collé le code et zou, je suis passé à autre chose.

    Le code

    1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 …

    Lire la suite Design Patterns – Decorator – Code source simple en C++

    Compiler llvm, clang, libc++abi et libc++ sur Debian Wheezy

    La date de rédaction ou de dernière modification de ce type d’article est importante. Par exemple, j’ai rencontré des problèmes qui ont été résolu depuis. Pour fixer les idées, je rappelle que je suis sous Windows 7, dans une VirtualBox 4.2.12 où je fais tourner Debian 7.0 Wheezy 64 bits. J’espère que cet article donnera des pistes si jamais vous avez des problèmes similaires.

    Articles qui peuvent être utiles :

    Ne commencez pas par tout lire… Vous allez mourir car certains points sont un peu chauds. Cela dit, dans quelques jours, quand vous en aurez marre et que vous …

    Lire la suite Compiler llvm, clang, libc++abi et libc++ sur Debian Wheezy

    The rule of the big three (and a half) – Source code

    This is my first article in English on this blog so please be forgiving.

    I recently read a C++ article about The rule of the big three (and a half) and I took the time to make sure the code snippets of the article works on my PC.

    Indeed the evil is always in the details and it usually help me a lot to practice when I’m learning something new. Anyway, here is what I came with.

    Each source code is complete, meaning you should be able to copy paste it directly. I only tested the code …

    Lire la suite The rule of the big three (and a half) – Source code

    Recompiler Cinder 0.85 – Visual Studio 2013 & Boost 1.55


    Introduction

    Je crois que tout est dans le titre… En fait, ce qui s’est passé, c’est que tout fonctionnait bien sous Visual Studio Express 2012 mais quand la version de Visual Studio Express 2013 est sortie, je me suis jeté dessus et comme je n’avais pas gardé la version 2012 sur mon disque dur, je me suis retrouvé coincé. En effet, quand on essaie de faire marcher les exemples de Cinder, plus rien ne passe car la bibliothèque n’a pas été compilée avec le bon compilateur (2012 vs 2013). Il faut donc recompiler Cinder avec Visual Studio 2013 mais comme …

    Lire la suite Recompiler Cinder 0.85 – Visual Studio 2013 & Boost 1.55

    À propos de Codingame : bien débuter les challenges en C++

    codingame

    Attention : cet article commence à dater (2015). La plupart des informations doivent être toujours correctes mais il y a sans doute eu des évolutions côté Codingame.

    Je ne connaissais pas Codingame. Suite discussion avec un pote j’ai eu l’occasion d’y faire un tour ce soir. C’est vraiment super. Que vous soyez développeur C, C++, Python, Java… vous y trouverez des problèmes à résoudre. Y a un tutorial qui explique l’environnement, ce que l’on peut faire, ce que l’on ne peut pas faire etc. Je suis bluffé par ce que j’ai vu. Faudra que je m’y intéresse vraiment.

    Une fois …

    Lire la suite À propos de Codingame : bien débuter les challenges en C++

    My Computer Science Vocabulary page – alphabetic order

    Too often I have « problems » with computer science vocabulary . In addition, there is always something new I learn along my readings/viewings on the Web. So, I decided to start this page. Usually Googling helps a lot to get an « answer » at the speed of light. On the other hand, working on this page, adding words, taking the time to read, copy/paste, write, summarize what I think I understood help me a lot.

    How it works

  • This is mostly for me
  • This is done mostly in a C++ context
  • There is no goal of completeness (how could …

    Lire la suite My Computer Science Vocabulary page – alphabetic order

  • Installation de Boost sous Windows 7 ou Windows 8

    Si vous êtes pressé, lisez l’update de l’installation de Boost qui se trouve tout à la fin de ce billet.

    Je suis sous Windows 7 64 bits, j’utilise Microsoft Visual Studio Express 2012 for Windows Desktop et la version courante de boost est 1.51.0. Je m’appuie sur le Getting Started officiel de Boost mais je m’adapte à ma configuration et je mets le tout en français.

    Il faut récupérer la dernière version de boost (ici boost_1_51_0) sur le site http://www.boost.org/

    Dans le répertoire Téléchargements de Windows il faut dézipper la bête (79 Mo) dans un répertoire « boost_1_51_0 » par …

    Lire la suite Installation de Boost sous Windows 7 ou Windows 8