"No matching constructor for initialization of 'LM35' in "main.cpp" 问题,行:16,列:27"
Problem with "No matching constructor for initialization of 'LM35' in "main.cpp", Line: 16, Col: 27"
我是一名学生,正在学习 MBED。我正在使用 Nucleo 开发板和 MBED 在线编译器。
这是我的代码:
LM35.h
#ifndef MBED_LM35
#define MBED_LM35
#include "mbed.h"
class LM35
{
public:
LM35(PinName pin);
void mjerenje();
private:
AnalogIn _pin;
};
#endif
LM35.cpp
#include "LM35.h"
#include "mbed.h"
LM35::LM35(PinName pin) : _pin(pin) {}
float temperatura;
void LM35::mjerenje()
{
Serial pc(USBTX, USBRX);
temperatura = _pin.read();
temperatura = (temperatura*5000)/10;
pc.printf("Temperatura je %.2f stupnjeva Celzijevih.\n \r", temperatura);
return temperatura;
}
这里是 Main.cpp
#include "mbed.h"
#include "LM35.h"
DigitalOut led1(PC_12);
Serial pc(USBTX, USBRX);
LM35 senzor(PC_0);
int main()
{
senzor.mjerenje();
float temperatura2 = LM35();
pc.printf("%f", temperatura2);
}
我无法从库中取出温度并在 main.cpp 中使用它。
我收到以下错误:错误:“main.cpp”中 'LM35' 的初始化没有匹配的构造函数,行:16,列:27
有人可以帮助我吗?
在LM35.cpp
void LM35::mjerenje()
return 一个浮点值,应该是 -->
float LM35::mjerenje()
在main.cpp
float temperatura2;
temperatura2 = senzor.mjerenje();
我是一名学生,正在学习 MBED。我正在使用 Nucleo 开发板和 MBED 在线编译器。 这是我的代码:
LM35.h
#ifndef MBED_LM35
#define MBED_LM35
#include "mbed.h"
class LM35
{
public:
LM35(PinName pin);
void mjerenje();
private:
AnalogIn _pin;
};
#endif
LM35.cpp
#include "LM35.h"
#include "mbed.h"
LM35::LM35(PinName pin) : _pin(pin) {}
float temperatura;
void LM35::mjerenje()
{
Serial pc(USBTX, USBRX);
temperatura = _pin.read();
temperatura = (temperatura*5000)/10;
pc.printf("Temperatura je %.2f stupnjeva Celzijevih.\n \r", temperatura);
return temperatura;
}
这里是 Main.cpp
#include "mbed.h"
#include "LM35.h"
DigitalOut led1(PC_12);
Serial pc(USBTX, USBRX);
LM35 senzor(PC_0);
int main()
{
senzor.mjerenje();
float temperatura2 = LM35();
pc.printf("%f", temperatura2);
}
我无法从库中取出温度并在 main.cpp 中使用它。 我收到以下错误:错误:“main.cpp”中 'LM35' 的初始化没有匹配的构造函数,行:16,列:27
有人可以帮助我吗?
在LM35.cpp
void LM35::mjerenje()
return 一个浮点值,应该是 -->
float LM35::mjerenje()
在main.cpp
float temperatura2;
temperatura2 = senzor.mjerenje();