2012-08-13 73 views
0

我想創建一個對象矩陣,我也想用「矩陣(i,j)」方式訪問它的元素。我首先想到了Boost,但據我瞭解,Boost矩陣由基本數據類型組成,如int或double,而不是其他更復雜的對象。矩陣的對象?

我也想過使用STL;我記得曾經使用過兩次向量看過二維矩陣的STL定義。

乾杯, 何塞

回答

0

我敢肯定,你還可以使用升壓矩陣類任意類型;只是一堆數字算法需要矩陣中的元素具有類似數字的語義。

http://www.boost.org/doc/libs/1_50_0/libs/numeric/ublas/doc/types_overview.htmhttp://www.boost.org/doc/libs/1_50_0/libs/numeric/ublas/doc/matrix.htm

下面是一個例子:

#include <boost/numeric/ublas/matrix.hpp> 
#include <string> 
int main (int argc, const char * argv []) { 
    boost::numeric::ublas::matrix <std::string> strMatrix (5, 4); 
    strMatrix (3, 4) = std::string ("Hello!"); 
    return 0 ; 
} 
+0

非常感謝你馬歇爾,它的確是一個語義problerm。我要用Boost來解決我的問題! – 2012-08-14 08:48:35