【发布时间】:2017-11-05 02:39:51
【问题描述】:
setPosition(3,4) 在方法 foo() 中有效,但在派生的虚拟绘制方法中无效 矩形类。这不是 C++ 中的一个特性吗?谢谢。
class Shape
{
public:
int posX, posY;
public:
virtual void draw() const = 0;
void setPosition(int pX, int pY)
{
posX = pX;
posY = pY;
}
};
class Rectangle : public Shape
{
public:
virtual void draw() const
{
cout << "Drawing rectangle at " << posX << " "
<< posY << endl;
setPosition(3,4);
}
void foo()
{
setPosition(3,4);
}
};
【问题讨论】: