【问题标题】:inheritance from within a namespace error从命名空间错误中继承
【发布时间】:2013-09-25 20:34:59
【问题描述】:

我有以下代码:

#include <pcl/recognition/ransac_based/model_library.h>
#include <pcl/common/common.h>
#include <pcl/features/shot.h>


namespace pcl
{
    class LSDPointPairModelLibrary : public ModelLibrary
    { ... }
}

我收到错误消息:
expected class-name before '{' token

我也尝试像这样限定超类:pcl::recognition::ModelLibrary 但我收到错误 pcl::recognition 尚未声明

【问题讨论】:

  • 你试过recognition::ModelLibrary吗? ModelLibrary 类所在的确切命名空间是什么?
  • 这段代码是否包含在 model_library.h 中?当有循环包含引用时,通常会发生这种情况
  • @MatteoItalia:你什么意思?
  • 我觉得他说的是毒品
  • 听起来像是要删除的评论...

标签: c++ inheritance namespaces point-cloud-library


【解决方案1】:

至少您必须提供子命名空间recognition,但pcl::recognition 也应该可以工作。您没有忘记类定义末尾的分号吗?您可以尝试::pcl::recognition::ModelLibrary 以确保您从顶级命名空间开始。

【讨论】:

    猜你喜欢
    • 2013-03-10
    • 1970-01-01
    • 2013-08-13
    • 2017-12-10
    • 1970-01-01
    • 1970-01-01
    • 2020-03-20
    • 2013-03-03
    • 2013-12-30
    相关资源
    最近更新 更多