【问题标题】:Error 11 error LNK2005: "class cv::Mat imageOutput" (?imageOutput@@3VMat@cv@@A) already defined in MyForm.obj错误 11 错误 LNK2005:“class cv::Mat imageOutput”(?imageOutput@@3VMat@cv@@A) 已在 MyForm.obj 中定义
【发布时间】:2015-03-15 19:04:12
【问题描述】:

我对 C++/CLI 还是很陌生。我已经用“普通”C++ 开发了我的代码,现在我只是想在它周围包装一个 GUI。

我的 GUI 由两种形式组成。主要的(Form1)包含我的大部分 OpenCV 代码,并且可以正常工作和编译,直到我尝试在 Form2 中创建一个 cv::Mat 对象。编译链接器时出现以下错误:

错误 11 错误 LNK2005: "class cv::Mat ProgramWrapper::imageOutput" (?imageOutput@ProgramWrapper@@3VMat@cv@@A) 已在 MyForm.obj 中定义

错误 12 错误 LNK1169:找到一个或多个多重定义符号

有解决办法吗?

【问题讨论】:

    标签: c++ winforms opencv user-interface command-line-interface


    【解决方案1】:

    对于任何正在寻找答案但没有获得任何外部人员等运气的人,我终于找到了适合我的解决方案。

    只需将您的变量放在一个无名命名空间中的每个表单中。例如:

    namespace {
    cv::Mat image
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-05-28
      • 2012-04-25
      • 1970-01-01
      • 1970-01-01
      • 2014-12-21
      • 2010-10-11
      • 2015-08-10
      相关资源
      最近更新 更多