Ошибка компоновки: "неопределенная ссылка на vtable"

У меня проблема с моим кодом. Это работало, но когда я решил разделить его на несколько файлов, я получил ошибку компоновки.

Я искал другие подобные сообщения, но все еще не могу найти, что не так. Это мой код:

.час

     #ifndef VALIDITYCHECKER_H
     #define VALIDITYCHECKER_H
     //#including various libraries ...
     namespace ob = ompl::base;
    class ValidityChecker : public ob::StateValidityChecker
     {
     public:
        ValidityChecker(const ob::SpaceInformationPtr& si) :
        ob::StateValidityChecker(si) {}
        bool isValid(const ob::State* state) const override
         {      
             return this-> clearance(state) > 0.0;
         }
        double clearance(const ob::State* state) const override;
      };
     #endif 

.cpp

     #include "push_optimal_planner/validitychecker.h"
     namespace ob = ompl::base;
     namespace og = ompl::geometric;

     double clearance(const ob::State* state)
     {  //some code for the function } 

Я получаю эту ошибку:

CMakeFiles/planning.dir/src/planning.cpp.o: nella funzione "ValidityChecker::ValidityChecker(std::shared_ptr<ompl::base::SpaceInformation> const&)":
/home/simone/catkin_ws/src/push_optimal_planner/include/push_optimal_planner/validitychecker.h:44: riferimento non definito a "vtable for ValidityChecker"
collect2: error: ld returned 1 exit status

("riferimento не определено" vtable "это итальянский, это означает: " неопределенная ссылка на `vtable")

0 ответов

Другие вопросы по тегам