Go Down

Topic: Carte SD - programmation [mettre en tableau key et val liées] - config.txt (Read 3 times) previous topic - next topic

barbudor

Planquer le code ne le fait pas disparaitre. DOnc tu ne gagnera pas d'octets.

Mais structurer ton code en modules, avec ou sans classes, te fera gagner en lisibilité et maintenabilité.
Barbuduino: Arduino sur Breadboard & VinciDuino: Clone Leonardo // WR703: Mini-routeur hacké // LauchPad MSP430 et Stellaris // Panda II Arduino-like .NetMF sous VisualC#
RTFC: Read That F.....g Code / RTFD: Read That F.....g Doc / RTFDS: Read That F.....g DataSheet / RTFS: Read That F.....g Schematic / Wot da ya wanna D.I.Y. today ?

Geeks

Ok, au temps pour moi ! Quand je parlais de réduire, le voulais dire augmenter la lisibilité.

Ceci dit, j'aimerais que les classes soit externe à mon programme principal. Comment ça se passe ?

In crée les classes puis un coup de require() suffit ? Ou bien, faut-t-il gardé dans le seul fichier à charger ?

barbudor

require() c'est du Java(Script)

En C++ tu crée :
- Un fichier H de déclaration

Code: [Select]
#ifndef _MACLASSE_H_
#define _MACLASSE_H_

Class MaClasse
{
  public:
    MaClasse(); // Constructeur par défaut
    MaClasse( int p1, int p2 ); // Constructeur avec paramètres
    ~MaClasse(); // Destructeur

    int Toto( int p1 ); // Fonction membre publique Toto

  protected:
    void titi( int p2 ) ; fonction membre protégée

    int x;  // variable membre
    int y;
};

#endif


- Un fichier CPP d'implémentation

Code: [Select]


#include "MaClasse.h"

MaClasse::MaClasse()
{
  // code du constructeur par défaut
  x = 0;
  y = 0;
}

MaClasse::MaClasse( int p1, int p2 )
{
  // code du constructeur par défaut
  x = p1;
  y = p2;
}

MaClasse::~MaClasse()
{
  // code du destructeur
}

int MaClasse::Toto( int p1 )
{
  return (x + p1) / (y + 1);
}

void MaClasse::titi( int p1 )
{
  x++;
  y--;
}


Pour créer les fichiers dans l'IDE Arduino, tu cherche la petite fleche vers le bas à droite de la barre d'onglet et tu choisit "Ajouter un onglet"
Tu enregistre tous les fichiers dans le même répertoire que ton INO
Et normalement quand tu double-clique sur le INO, tout se charge

Au début du INO tu mets tous les #include "xxx.h"
Barbuduino: Arduino sur Breadboard & VinciDuino: Clone Leonardo // WR703: Mini-routeur hacké // LauchPad MSP430 et Stellaris // Panda II Arduino-like .NetMF sous VisualC#
RTFC: Read That F.....g Code / RTFD: Read That F.....g Doc / RTFDS: Read That F.....g DataSheet / RTFS: Read That F.....g Schematic / Wot da ya wanna D.I.Y. today ?

Geeks

Ok pour tout ça  8)

Je propose d'utiliser une fonction dans l'éditeur qui est de cocher éditeur externe. J'ai un bon vieux Geany qui me sert pas mal comme éditeur. Par contre, je compilerais avec l'ide arduino.

Je te remercie pour tous ces conseils et infos. Par contre require') php et java le font, peut-être pas c++ en effet  :smiley-sweat:

Bon et bien, la semaine prochaine, je met mon soft par terre, j'externalise tout  :smiley-mr-green:


Go Up