2015-10-19 27 views
0

的lockfree隊列我試圖創建一個boost::lockfree::queue下面這個例子:http://www.boost.org/doc/libs/1_54_0/doc/html/lockfree/examples.html的boost ::徵:: MatrixXf

我可以成功地創建它INT(整數數據類型)。但是我很難爲Eigen :: MatrixXf創建一個隊列。該隊列在SolveDGEM.h中聲明。

boost::lockfree::queue<Eigen::MatrixXf> q_cam0; 

我讓我無法理解

In file included from /home/eeuser/ros_workspaces/HeloRosProject/src/visensor_dgem/include/SolveDGEM.h:38:0, 
       from /home/eeuser/ros_workspaces/HeloRosProject/src/visensor_dgem/src/dgem.cpp:4: 
/usr/local/include/boost/lockfree/queue.hpp: In instantiation of ‘boost::lockfree::queue<Eigen::Matrix<float, -0x00000000000000001, -0x00000000000000001> >’: 
/home/eeuser/ros_workspaces/HeloRosProject/src/visensor_dgem/include/SolveDGEM.h:76:45: instantiated from here 
/usr/local/include/boost/lockfree/queue.hpp:86:1: error: invalid application of ‘sizeof’ to incomplete type ‘boost::STATIC_ASSERTION_FAILURE<false>’ 
/usr/local/include/boost/lockfree/queue.hpp: In instantiation of ‘boost::lockfree::queue<Eigen::Matrix<float, -0x00000000000000001, -0x00000000000000001> >’: 
/home/eeuser/ros_workspaces/HeloRosProject/src/visensor_dgem/include/SolveDGEM.h:76:45: instantiated from here 
/usr/local/include/boost/lockfree/queue.hpp:90:1: error: invalid application of ‘sizeof’ to incomplete type ‘boost::STATIC_ASSERTION_FAILURE<false>’ 

回答