Я обнаружил, что некоторый код не будет работать, если он не объявлен в самом заголовочном файле.Например, со следующим кодом «Hello World» будет напечатано при вызове test ():
//Myclass.h
class Myclass {
private:
SoftwareSerial *ss;
public:
void test() {
ss = & SoftwareSerial(0,1);
ss->begin(9600);
ss->print("Hello World");;
};
};
Но если я просто объявлю метод test () в заголовке и закодирую его в отдельномКак обычно, cpp с точно таким же кодом компилирует, но ничего не выводит:
//Myclass.cpp
void Myclass::test(){
ss = & SoftwareSerial(0,1);
ss->begin(9600);
ss->print("Hello World");
};
//this won't output anything
Почему это так?