Bonjour à tous,
Je me suis récemment lancé dans un projet. Ayant appris les bases en C++ en cours cette années et l'Arduino de mon côté, j'ai voulu "mixer" les deux dans un but ludique.
Mon projet est le suivant :
J'ai créé sous Visual Studio un programme permettant de gérer l'attribution des tâches ménagères. Pour ce faire j'ai créé 4 classes :
Cindividu : Représentant les individus de la maison
CHome : Représentant la maison
CRoom : Représentant les pièces de la maison
CTask : Représentant les tâches ménagères.
Mon code source semble bien fonctionner et attribue correctement les tâches ménagère de la journée à un individu.
Mon but à terme est d'afficher les tâches de la journée sur un écran 16*2.
Il y aura 2 boutons à côté :
Le premier dit au programme que la tâche a été accomplie et l'attribue donc à l'individu suivant.
Le second permet d'afficher les autres tâches une par une (Lié en manque de place de l'afficheur).
J'ai placé mes fichiers .h et .cpp dans un fichier "Home" lui même dans le fichier librairies d'Arduino.
Lorsque que je les inclue :
#include<CHome.h>
#include<CTask.h>
#include<CRoom.h>
#include<CHome.cpp>
#include<CRoom.cpp>
#include<CTask.cpp>
l'IDE semble les trouver.
Cependant j'ai un message d'erreur concernant les destructeurs de mes classes.
In file included from C:\Users\lalis\AppData\Local\Temp\arduino_modified_sketch_197725\sketch_mar14a.ino:5:0:
C:\Users\lalis\OneDrive\Documents\Arduino\libraries\Home/CHome.cpp: In destructor 'CHome::~CHome()':
C:\Users\lalis\OneDrive\Documents\Arduino\libraries\Home/CHome.cpp:28:16: error: no matching function for call to 'CHome::CRoom()'
CRoom::~CRoom();
^
In file included from C:\Users\lalis\OneDrive\Documents\Arduino\libraries\Home/CHome.h:2:0,
from C:\Users\lalis\AppData\Local\Temp\arduino_modified_sketch_197725\sketch_mar14a.ino:2:
C:\Users\lalis\OneDrive\Documents\Arduino\libraries\Home/CRoom.h:16:5: note: candidate: CRoom::~CRoom()
~CRoom();
^
C:\Users\lalis\OneDrive\Documents\Arduino\libraries\Home/CRoom.h:16:5: note: candidate expects 1 argument, 0 provided
In file included from C:\Users\lalis\AppData\Local\Temp\arduino_modified_sketch_197725\sketch_mar14a.ino:6:0:
C:\Users\lalis\OneDrive\Documents\Arduino\libraries\Home/CRoom.cpp: In destructor 'CRoom::~CRoom()':
C:\Users\lalis\OneDrive\Documents\Arduino\libraries\Home/CRoom.cpp:14:16: error: no matching function for call to 'CRoom::CTask()'
CTask::~CTask();
^
In file included from C:\Users\lalis\OneDrive\Documents\Arduino\libraries\Home/CRoom.h:2:0,
from C:\Users\lalis\OneDrive\Documents\Arduino\libraries\Home/CHome.h:2,
from C:\Users\lalis\AppData\Local\Temp\arduino_modified_sketch_197725\sketch_mar14a.ino:2:
C:\Users\lalis\OneDrive\Documents\Arduino\libraries\Home/CTask.h:19:2: note: candidate: CTask::~CTask()
~CTask();
^
C:\Users\lalis\OneDrive\Documents\Arduino\libraries\Home/CTask.h:19:2: note: candidate expects 1 argument, 0 provided
Utilisation de la bibliothèque Home prise dans le dossier : C:\Users\lalis\OneDrive\Documents\Arduino\libraries\Home (legacy)
exit status 1
Erreur de compilation pour la carte Arduino Uno
Ai-je fais fausse route en pensant qu'il était possible de créer son programme C++ à côté et de l'importer dans l'IDE Arduino ?
Auriez vous des conseils pour mener à bien mon projet ?
Je précise également que je suis encore débutant dans ce domaine
Merci d'avance