我正在使用名為Mitsuba的軟件。它附帶了一個用Boost包裝的Python實現。 Python中的這一行:使用Boost生成的Python模塊:與C++簽名不匹配
scene = SceneHandler.loadScene(fileResolver.resolve("model.xml"), paramMap)
產生一個錯誤。根據文檔,fileResolver.resolve的類型是fs :: path,paramMap的類型是ParameterMap。
在C++代碼的函數簽名是:
SceneHandler::loadScene(const fs::path &filename, const ParameterMap ¶ms)
的錯誤是:
Traceback (most recent call last):
File "...\foo.py", line 22, in
scene = SceneHandler.loadScene(fileResolver.resolve("model.xml"), paramMap)
ArgumentError: Python argument types in
SceneHandler.loadScene(str, StringMap)
did not match C++ signature:
loadScene(class boost::filesystem2::basic_path,class std::allocator >,struct boost::filesystem2::path_traits>, class std::map,class std::allocator >,class std::basic_string,class std::allocator >,struct mitsuba::SimpleStringOrdering,class std::allocator,class std::allocator > const ,class std::basic_string,class std::allocator > > > >)
我可以做什么進一步的調查?你知道問題來自哪里嗎?