作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我对遇到的错误感到有点困惑。我制作了一个名为“SensorNode”的类,每个 SensorNode 都有一个传感器链接列表。 SensorNode 的一个数据成员是名为 mySensors 的 SensorBlock(链表)指针。 mySensors 应该指向它所在的传感器节点所拥有的传感器链表中的第一个传感器。这是 SensorNode 的类声明:
class SensorNode {
char* NodeName;
int NodeID;
LOCATION Node1;
float batt;
int func;
SensorBlock *mySensors;
public:
SensorNode(char *n, float x, float y, float z, int i, float ah);
void print();
void setOK(int o);
int getOK();
void setLOC(float longi, float lat, float h);
int amIThisSensorNode(char *n);
void addSensorToNode(sensor *s);
};
这是 SensorBlock 的类声明:
class SensorBlock {
friend class SensorNode;
SensorBlock * LLelement;
sensor * SensEl;
};
我的问题是我的 void addSensorToNode(sensor *s) 函数。参数 s 指向一个传感器,该传感器应该添加到属于该节点的传感器列表的末尾。我不知道该怎么做,因为它不是我要创建和添加的新传感器,而是指向我要添加的传感器的指针。
这是我目前所拥有的:
void SensorNode::addSensorToNode(sensor *s) {
if(mySensors == '\0') //mySensors is first initialized to NULL
{
mySensors = s; //I get an error on this line.
}
else {
}
}
我不知道如何修复我在上面那行遇到的错误,而且当 mySensors 不再等于 null 时,我不知道在“else”中放入什么。如果我解决了上述错误,我可能会更好地理解新传感器的添加过程。预先感谢您提供的任何帮助!!
最佳答案
mySensors = s
应该是 mySensors.SensEl= s
因为 mySensors 是 SensorBlock
类型,而 s 是 sensor
void SensorNode::addSensorToNode(sensor *s) {
if(mySensors == NULL) //mySensors is first initialized to NULL
{
mySensors = new SensorBlock();
mySensors->SensEl = s; //I get an error on this line.
mySensors->LLelement = NULL;
}
else {
SensorBlock newBlock = new SensorBlock();
newBlock->SensEl = s;
newBlock->LLelement = NULL;
mySensors->LLelement = newBlock;
}
}
关于c++ - 如何向链表添加内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16886664/
我是一名优秀的程序员,十分优秀!