【问题标题】:PointCloudLibrary project -> pcl/io/boost.h is causing problems: AccessViolationExceptionPointCloudLibrary 项目 -> pcl/io/boost.h 导致问题:AccessViolationException
【发布时间】:2013-03-05 14:38:15
【问题描述】:

我的程序是 C#,但这个项目是 C++。 我需要包含pcl/io/boost.h 才能使用点云。 但是,我的问题是在初始化包含它的类时出现 AccessViolationException 错误。它给出了这样的解释:

试图读取或写入受保护的内存。这通常是一个 指示其他内存已损坏。

我花了 2 天时间才发现问题出在 boost 上,但我之前遇到过问题......

我运行 windows 7,VS 2010 x64 在 x64 中安装了 pcl 的所有内容。

【问题讨论】:

  • 你的问题是什么?如果您发现 Boost 可能存在错误,那么您应该向他们报告。
  • 我认为boost c++是原生代码,你最好用一个c++ dll项目来包装你需要的功能,在你的C#项目中使用这个dll。
  • @joachim,我的问题是如何解决这个问题,我怀疑这是一个提升错误。因为这意味着没有人可以包含 boost 并因此使用 pcl。
  • @neohope,对不起,我忘了明确指出这是一个 C++ (dll) 项目,问题出在其中,但错误消息来自 C#。
  • Danahi,我建议你先写一个C++项目来测试这个dll。

标签: c++ boost access-violation point-cloud-library


【解决方案1】:

好的,我修复了它,事实证明我可以通过查看我在 boost (shared_array) 中使用的内容来解决该错误,并检查 boost 文件夹中是否有库,而不是 pcl/io/boost。

因此,为了将来参考,如果您从第三方获得 pcl 库错误,请检查您是否可以使用第三方库而不是 pcl/第三方。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2010-11-09
    • 1970-01-01
    • 2022-07-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多