Aller au contenu


Photo
- - - - -

c++ .h .cpp

c++

  • Veuillez vous connecter pour répondre
2 réponses à ce sujet

#1 Oliver17

Oliver17

    Pilier du forum

  • Modérateur
  • PipPipPipPipPip
  • 2 758 messages
  • Gender:Male

Posté 25 avril 2018 - 02:14

Coucou les maker's, bon je commence à découper mon programme pour le Gcom, et j'aimerais avoir un .h propre comme il se doit ^^

 

Le truc, dois je mettre union et structure dans le .h, perso j'ai envie de dire oui au même titre qu'une classe, mais j'ai pas envie de faire n'importe quoi, donc si vous avez un lien expliquant la réalisation d'un .h correct je suis preneur :)

 

Edit : 

 

ah oui dans mon fichier actuel cela se présente comme ceci

struct S_SERVO
{
    char ms_servo;                          //1 octet/bytes (8 bits)  : 0 / 255
    char ms_membre;                         //1 octet/bytes (8 bits)  : 0 / 255
   
    //unsigned short int ms_acceleration;   //2 octet/bytes (16 bits) : 0 / 65 535
    unsigned short int ms_vitesse ;         //2 octet/bytes (8 bits)  : 0 / 65 535
    short int ms_cible ;                    //2 octet/bytes (16 bits) : -32 768 / +32 767
    void affiche() const;
};

//On reçoit les données arduino
struct S_ARDUINO
{
    short int roll;                     //2 octet/bytes (16 bits) : -32 768 / +32 767
    short int pitch;                    //2 octet/bytes (16 bits) : -32 768 / +32 767
    short int yaw;                      //2 octet/bytes (16 bits) : -32 768 / +32 767
    unsigned short int boussole;        //2 octet/bytes (16 bits) : 0 / 65 535
};

union U_DATA
{
    S_SERVO s_servo;
    S_ARDUINO s_arduino;
    unsigned char cast_servo[sizeof (s_servo)];
    unsigned char cast_arduino[sizeof (s_arduino)];
}u_servo[NB_SERVO], u_arduino, u_buf;

Et c'est là que j'ai peur de la boulette pour que tout communique correctement ^^

 

Merci ^^


signature_01.png -->

 

Mon Tipeee
 


#2 cocothebo

cocothebo

    Membre passionné

  • Membres
  • PipPipPip
  • 341 messages
  • Gender:Male

Posté 25 avril 2018 - 03:56

Salut,

 

Je vois pas trop ce qui te fait peur dans le fichier .h, celui ci doit juste contenir la déclaration des variable "publiques" de ton .c, les fonctions, etc.

En gros on sépare la "présentation" (le .h) qui donne ce qu'on peut faire avec le .c associé, et l'implémentation (le .c) qui n'est souvent pas utile pour utiliser une librairie (si les fonctions ne s'appellent pas func1, func2 etc :P).

 

Un petit lien plutot c que c++ https://tdinfo.phelm...chierHeader.pdf (attention je l'ai juste très vite survolé, et ça devait etre le premier line de google :P)

 

Un truc important par contre c'est de bien mettre les routines de preporcesseur au début du fichier .h (les #ifndef blabla #define blabla puis le #endif tout à la fin), c'est expliqué dans le lien ci dessus, et ça évite les inclusions multiples qui font que ton compilateur serait pas du tout content.



#3 Oliver17

Oliver17

    Pilier du forum

  • Modérateur
  • PipPipPipPipPip
  • 2 758 messages
  • Gender:Male

Posté 25 avril 2018 - 04:05

@Cocothebo : ok merci beaucoup pour le lien, en cherchant dans google je l'ai pas eu ^^ (hum google fait du favoritisme lol), sinon c'est clair que je dois me mettre dans bâtons dans les roues tous seul. ;)


signature_01.png -->

 

Mon Tipeee
 






Aussi étiqueté avec au moins un de ces mots-clés : c++

0 utilisateur(s) li(sen)t ce sujet

0 members, 0 guests, 0 anonymous users