gpt4 book ai didi

c++ - 为什么会这样?

转载 作者:行者123 更新时间:2023-11-28 00:02:59 25 4
gpt4 key购买 nike

<分区>

我真的不明白为什么会这样。

#include<iostream>

using namespace std;
class Figura{
public:
int x;
int y;
virtual void pomak(int dx=10,int dy=1)
{

x+=dx;
y+=dy;
cout<<"Figura"<<endl;


}
};
class Skakac:public Figura{
public:
void pomak(int dx=2,int dy=-1)
{
cout<<dx<<endl;
x+=dx;
y+=dy;
cout<<"Skakac"<<endl;


}
};

int main()
{
Skakac S;
S.x=0;
S.y=0;
Figura* x=&S;
cout<<x->x<<" "<<x->y<<endl;
x->pomak();
cout<<S.x<<" "<<S.y<<endl;




}

当我调用函数 pomak() 时,它会将 dx 计算为 10,尽管它调用了第二个函数 pomak(不是虚拟函数)并且我明确指出 dx = 2。

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com