#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,它有完全相同的问题,但我看不到错误。 我确信这是我错过的一些小事。
答案 0 :(得分:1)
您忘记在for
- &gt;中关闭main
周期的括号所有函数定义都变为本地的,不允许使用。