繁体   English   中英

Arduino在另一个类的构造函数中将一个对象作为参数传递

[英]Arduino passing in one object as a parameter in the constructor of another class

我对此很陌生,所以如果我叫错名字,请原谅我。 我想做的是将一个类的实例传递给另一个类的构造函数。 我知道这些通常是在.h和.cpp文件中完成的,但是对于我运行的代码来说,它似乎并不在乎,但是我可能是错的。 除了类defs和构造函数之外,我已经删除了大部分代码。

我想在代码中有一些现有的Thermistor实例(如coldtherm),并将其传递给Tempcontroller的构造函数,以便像在printfromthermistor函数中所示的那样调用Coldtherm。

//Thermistor Class
    class Thermistor
{

  int Thermpin;

public:
  Thermistor(int pin)
  {
  Thermpin = pin;
  }


double TEMPOutput()
  {
  return Thermpin;
  }  
void Update()
  {

  }
};

Thermistor coldtherm(1);

//Tempcontrol Class
class TempController
{

public:

TempController(Thermistor&) //Right here I want to pass in coldtherm to the Tempcontroller and be able to call functions from that class.


void printfromthermistor()
{

  Thermistor.TEMPOutput();
}


};

重复。

引用只能初始化,不能更改。 如所示,在构造函数中使用它意味着必须在构造函数初始化引用成员:

class TempController
{
  Thermistor & member;
public:
  TempController( Thermistor & t ) { member = t; }; // assignment not allowed
  TempController( Thermistor & t ) : member(t) { }; // initialization allowed
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM