在汽车类的displayData成员函数中,错误提示我应该创建指向该成员的指针,我是否必须创建指向该成员的指针?如果我这样做怎么办?我完全忘记了指针。我是否使对象成为指针然后指向displayData成员函数?我没有看到红色的花键,只是一条错误消息,上面写着“使用'&'创建指向该成员的指针。我尝试过但没有运气。
#include<iostream>
#include<string>
using namespace std;
class Car
{
private:
int xVal, yVal, zVal;
protected:
public:
Car() { int xVal = 0; int yVal = 0; int zVal = 0; }
Car(int x,int y,int z) { xVal = x; yVal = y; zVal = z; }
~Car() {};
int getX() { return xVal; }
int getY() { return yVal; }
int getZ() { return zVal; }
void changeX(int n) { xVal = n; }
void changeY(int n) { yVal = n; }
void changez(int n) { zVal = n; }
virtual void getData();
void displayData();
};
class Sensor : public Car
{
private:
string sensorType;
protected:
public:
Sensor() { sensorType = "EMPTY"; }
Sensor(int x, int y, int z, string type) :Car(x,y,z) { sensorType = type; }
};
void Car::displayData()
{
cout << "The x values is: " << getX() << endl;
cout << "The y values is: " << getY() << endl;
cout << "The z values is: " << getZ() << endl;
}
int main()
{
Sensor n1;
Sensor n2(20,30,40, "Accelerometer");
n1.displayData;
n2.displayData;
return 0;
}
答案 0 :(得分:0)
调用函数时出现语法错误。
应该是
n1.displayData();
代替
n1.displayData;