首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >编译错误- boost::numeric::ublas::coordinate_matrix

编译错误- boost::numeric::ublas::coordinate_matrix
EN

Stack Overflow用户
提问于 2012-03-03 02:09:19
回答 1查看 1.2K关注 0票数 1

对于一般信息,我使用boost 1.46。自此版本以来,ublas没有发生任何变化。

我使用gcc版本4.6进行编译。

所以现在我的问题是。我有一个非常基本的类,它应该适合自定义接口的boost矩阵类。这门课看起来如下:

代码语言:javascript
复制
template< typename TYPE >
class BoostCoordinateMatrix: public MatrixInterface<TYPE> ,
    public boost::numeric::ublas::coordinate_matrix<TYPE> {
public:
BoostCoordinateMatrix() :
    boost::numeric::ublas::coordinate_matrix<TYPE>() {
}

BoostCoordinateMatrix(int rows, int columns) :
    boost::numeric::ublas::coordinate_matrix<TYPE>(rows, columns) {
}

int rows() const {
    return this->size1();
}

int columns() const {
    return this->size2();
}

virtual void set(int row, int column, TYPE value) {
    (*this)(row, column) = value;
}

TYPE& operator()(int i, int j) {
    return this->boost::numeric::ublas::coordinate_matrix<TYPE>::operator()(
            i, j).ref();
}

TYPE operator()(int i, int j) const {
    return this->boost::numeric::ublas::coordinate_matrix<TYPE>::operator()(
            i, j);
}

};

在编译该类时,两个操作符( int,int)都会出现编译器错误:

./inc/flow_field_matrix_free_interface_impl.h:697:1:_

./inc/boost_ const _Matx.h:38:15:实例化自‘boost::numeric::ublas::index_triple,boost::numeric::ublas::unbounded_array’类型的非const引用::()(int,int)与类型=double‘boost::numeric::ublas::index_triple,boost::numeric::ublas::unbounded_array,boost::numeric::ublas::unbounded_array >>&从rvalue类型‘boost::numeric::ublas::indexed_iterator,boost::numeric::ublas::unbounded_array,boost::numeric::ublas::unbounded_array > >,std::random_access_iterator_tag>::reference {aka boost::numeric::ublas::index_triple,boost::numeric::ublas::unbounded_array,/usr/include/c++/4.6/bits/stl_tempbuf.h:232:5:错误:在传递_ForwardIterator = boost::numeric::ublas::index_triple,boost::numeric::ublas::unbounded_array,boost::numeric::ublas::unbounded_array >> >*的‘boost::numeric::ublas::unbounded_array _ForwardIterator,_Tp&]的参数3时,_Tp = boost::numeric::ublas::index_triple,boost::numeric::ublas::unbounded_array,boost::numeric::ublas::unbounded_array >>‘

我希望有人能帮我。

EN

回答 1

Stack Overflow用户

发布于 2012-03-04 13:33:43

好的,我想我发现了问题:

http://boost.2283326.n4.nabble.com/example-usage-of-coordinate-matrix-fails-on-Ubuntu-11-04-amd-64-td3580407.html

我刚刚测试了最新的boost版本,这个版本也不编译。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/9542762

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档