Bonjour à tous,
je viens à vous car je ne trouve pas de solution à mon problème même après avoir fouiller sur internet.
La chose est pourtant simple, j'ai une classe qui hérite d'une autre classe et à la compilation j'ai une erreur : "expected class-name before '{' token" sur la ligne "class nom_de_ma_classe : public classe_mère" de la classe en question.
Voici les headers de mes deux classes :
La classe mère
et la classe fille :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24 #ifndef I2CDEVICE_H_ #define I2CDEVICE_H_ #include <WProgram.h> #include <MyLib.h> #include <HardWire.h> class I2C_Device { public: I2C_Device(); ~I2C_Device(); bool I2CInit(HardWire* newWire, uint8_t I2C_Port = 1, uint8_t I2C_Flags = 0); void WriteReg(uint8_t address, uint8_t reg, uint8_t value); uint8_t ReadReg(uint8_t address, uint8_t reg); void BurstWrite(uint8_t address, uint8_t first_reg, uint8_t nbytes, uint8_t *buff); void BurstRead(uint8_t address, uint8_t first_reg, uint8_t nbytes, uint8_t *buff); private: HardWire* wire; bool I2CInitiated; }; #endif /* I2CDEVICE_H_ */
J'ai vérifié, ni WProgram.h ni MyLib.h ni HardWire.h n'incluent I2CDevice.h.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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 #ifndef IMU10DOF_H_ #define IMU10DOF_H_ #include <WProgram.h> #include <MyLib.h> #include <I2CDevice.h> class IMU10DOF : public I2C_Device { public: IMU10DOF(); ~IMU10DOF(); void Init(uint8 I2CPort, uint8 flags); void Deinit(); void Update(); void GetAcc(axes* acc); void AccAttachInterrupt(uint8_t int1, uint8_t int2); void AccDetachInterrupt(); void UpdateAcc(); void GetGyro(axes* gyro); void SetGyroScale(uint16_t scale); private: uint8_t intPinAcc1, intPinAcc2; bool intActive; bool newAccData; axes gyro_data, acc_data, calib; }; // quelques #defines #endif /* IMU3000_H_ */
J'avoue que je suis un peu perdu et que j'aurais bien besoin d'un peu d'aide.
Merci d'avance
Partager