-1
#include <iostream>
using namespace std;
class ShapeTwoD
{
public:
virtual int get_x(int);
virtual int get_y(int);
virtual void set_x(int,int);
virtual void set_y(int,int);
protected:
};
class Square:public ShapeTwoD
{
public:
void set_x(int,int);
int get_x(int);
void set_y(int,int);
int get_y(int);
private:
int x_coordinate[3];
int y_coordinate[3];
};
int main()
{
Square *s;
s = new Square;
int x;
int y;
for (int i = 0; i < 4; i++)
{
cin >> x;
cin >> y;
s->set_x(i,x);
s->set_y(i,y);
cout << s->get_x(i);
ShapeTwoD* shape[100];
shape[0] = s;
cout << shape[0]->get_x(1);
}
int ShapeTwoD::get_x(int verticenum)
{
return this-> x_coordinate[verticenum];
return 0;
}
int ShapeTwoD::get_y(int verticenum)
{
return 0;
}
void ShapeTwoD::set_x(int verticenum,int value)
{
this-> x_coordinate[verticenum] = value;
}
void ShapeTwoD::set_y(int verticenum, int value)
{
}
void Square::set_x(int verticenum,int value)
{
this->x_coordinate[verticenum] = value;
}
int Square::get_x(int verticenum)
{
return this->x_coordinate[verticenum];
}
void Square::set_y(int verticenum, int value)
{
this->y_coordinate[verticenum] = value;
}
int Square::get_y(int verticenum)
{
return this->y_coordinate[verticenum];
}
我不知道爲什麼我收到這個錯誤,我指的是另一個SO question具有完全相同的問題,但我不能看到的錯誤。 我相信它的東西很小,我錯過了。函數聲明是不允許在此之前
瞭解編譯器錯誤發生的位置(例如上面代碼中突出顯示的行)以及確切的錯誤會很有用。 – Nim