undefined reference to `BNL_model::pkg_available(std::unordered_map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, int, std::hash<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::equal_to<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, int> > >&, des::package_type const&)'
collect2: error: ld returned 1 exit status
其中的一种原因可能是:
1.基类的实现写头文件里了。
2.最后居然是因为在基类里实现了,在子类里又写了一遍pkg_availabe这个接口,纯粹误写。如果要写,则override 进行重写。