gpt4 book ai didi

c++ - 将继承类对象的 vector 传递给需要基类 vector 的函数

转载 作者:搜寻专家 更新时间:2023-10-31 02:15:27 24 4
gpt4 key购买 nike

我正在使用 A 类,它继承自 opencv Rect。 A 只是添加了一些我想在执行期间跟踪的变量。

class A: public Rect { //code, constructors... }

我想用opencv的方法detectMultiScale这需要一个空的 vector<Rect>所做的就是用预期的输出填充它。

我如何传递继承对象的空 vector ,就是这样 vector<A>从 Rect 并期望在方法中捕获基类? (我此时理解该方法是一个黑盒子,我不想编译opencv来重新声明一些东西)。

最佳答案

How can I pass an empty vector of inherited objects, that's it the vector from Rect and expect to catch the base class inside the method?

这是不可能的。该函数需要一个 Rect 对象的 vector ,因此这是您必须传递的内容。

如果你想要一个A的 vector ,那么你可以编写一个构造函数A(Rect),它接受一个基类的实例作为参数,并相应地初始化基础子对象。然后编写一个循环来转换获取的 Rect 实例。

关于c++ - 将继承类对象的 vector 传递给需要基类 vector 的函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38441821/

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