c++ - 在另一个类中调用公共类方法作为c ++中的插件
问题描述
我已经实现了一个(轨道)类,它可以作为独立的正常工作,但是当我尝试使用继承将它集成到另一个项目中时,它给了我错误。片段如下
//file ctrack.hpp
class ctrack {
public:
explicit ctrack(int mxc);
void register_Object(int cX, int cY);
std::vector<std::pair<int, std::pair<int, int>>> update(std::vector<std::vector<int>> boxes);
std::map<int, std::vector<std::pair<int, int>>> path_keeper;
private:
std::map<int, int> disappeared;
};
调用类 snp.hpp
//file snp.hpp
#include "ctrack.h"
class snp : public ctrack, public obsd
{
public:
void detect();
};
现在,当我尝试调用 snp.cpp 中的更新函数时
//fiel snp.cpp
void snp::detect(ushort data)
{
static std::vector<cv::Rect2d> boxes;
snp->update(boxes);//calling method from ctrack class
}
我也尝试过其他方法,比如在检测类中创建 ctrack 类的对象并调用更新方法。
错误前 1) 错误: '->' 标记自动对象之前的预期主表达式 = ctrack->update(boxes); 2) 错误:没有匹配函数调用 'snp::update(std::vector<cv::Rect_ >&)' auto objects = update(boxes);
但我缺少基础知识。
请帮忙,我怎样才能轻松地从snp类中的检测方法中的ctrack类调用方法更新
非常感激。
解决方案
推荐阅读
- typescript - 我需要包括 admin.initializeApp(); 在我所有的 Firebase 云函数文件(Typescript)中?
- git - “git config core.worktree”是什么意思?
- mysql - MySQL 服务器不通过 Mac OS 上的 MAMP 运行
- python - 打开子进程的 Python 线程直到我按 Enter 才加入
- c# - C# 日期比较函数产生错误结果
- neo4j - 在节点上执行基于时间的操作
- google-apps - 多个 G Suite 帐号
- android - TextWatcher 在 api 调用期间跳过字符
- c# - 获取特定于租户 ID 的消息
- android - 按语言环境按顺序获取工作日