我知道有人问过这类问题,我查看了这些回答,但仍然认为我遗漏了一些东西。我得到这个“没有匹配的构造函数错误”,因为我没有构造函数,但话虽如此,我看到的关于构造函数的所有内容都说如果你还没有在类中包含变量名,你需要它们。但是我已经这样做了,所以我需要一个构造函数吗?如果我这样做,那它应该是什么样子?我是 C++ 新手,正在上课,这是一个作业。
这是我的带有类声明的 sensor_node.h 文件:
#ifndef SENSORNODE_H
#define SENSORNODE_H
#include <iostream>
class LOCATION {
float lat, longi, height;
public:
LOCATION (float lat, float longi, float height);
void setx(float xx);
void sety(float yy);
void setz(float zz);
void print();
};
class SensorNode {
char* NodeName;
int NodeID;
LOCATION Node1;
float batt;
int func;
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);
};
#endif /* defined(__Project_3__sensor_node__) */
这是我的 main.cpp 错误(在“位置”的行上):
#include <iostream>
using namespace std;
#include "sensor_node.h"
int main() {
LOCATION a; SensorNode s1("Pulse",15.9,-30.1,0,157,2.0);
int hold;