0

Arduino IDEで、コンストラクターが2回宣言される方法についてエラーが発生します。

これはそのためのコードです:

tond.h

#ifndef TOND_H
#define TOND_H

class Tondeuse {

public:
  Tondeuse();
  Tondeuse(int,int);

};

#endif

tond.cpp

#ifndef TOND
#define TOND

#include "arduino.h"
#include "tond.h"


Tondeuse::Tondeuse()
{

}

Tondeuse::Tondeuse(int h, int w)
{

Serial.println("Hello");

}



#endif

そしてエラー:

Tondeuse.cpp.o: In function `Tondeuse':
/tond.cpp:11: multiple definition of `Tondeuse::Tondeuse()'
tond.cpp.o:C:\Users\DEPANNE\AppData\Local      \Temp\build6942484698459603114.tmp/tond.cpp:11: first defined here
Tondeuse.cpp.o: In function `Tondeuse':
/tond.cpp:11: multiple definition of `Tondeuse::Tondeuse()'
tond.cpp.o:C:\Users\DEPANNE\AppData\Local   \Temp\build6942484698459603114.tmp/tond.cpp:11: first defined here
Tondeuse.cpp.o: In function `Tondeuse':
/tond.cpp:16: multiple definition of `Tondeuse::Tondeuse(int, int)'
tond.cpp.o:C:\Users\DEPANNE\AppData\Local\Temp\build6942484698459603114.tmp/tond.cpp:16: first defined here
Tondeuse.cpp.o: In function `Tondeuse':
/tond.cpp:16: multiple definition of `Tondeuse::Tondeuse(int, int)'
tond.cpp.o:C:\Users\DEPANNE\AppData\Local\Temp\build6942484698459603114.tmp/tond.cpp:16: first defined here

私はそれを二度含めていません、そしてそれで間違っているものを見つけることができません。

4

1 に答える 1

5

tond.cppに含めますTondeuse.cpp。実装ファイルを含めないでください。

ファイルが存在しなくなった場合(リファクタリング)、再度ビルドする前にソリューションをクリーンアップしてください。

于 2013-01-24T14:56:50.080 に答える