gpt4 book ai didi

c++ - 覆盖父类的功能

转载 作者:太空狗 更新时间:2023-10-29 20:05:35 24 4
gpt4 key购买 nike

<分区>

class classa {
public:
virtual void foo();
};

class classb : public classa {
public:
virtual void foo() override;
};


void classa::foo()
{
std::cout << "foo from a" << std::endl;
}

void classb::foo()
{
std::cout << "foo from b" << std::endl;
}

int main()
{
std::vector<classa> stuff;

classa a;
classb b;

stuff.push_back(a);
stuff.push_back(b);

stuff[0].foo();
stuff[1].foo();


return 0;
}

我希望上面的代码能够返回

foo from a 
foo from b

但它返回的都是 foo from a

我认为这是因为 vector 存储了 classa 但我不确定。如何让 b 调用 classb:foo()

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