matrix.cc

来自「A C++ class library for scientific compu」· CC 代码 · 共 60 行

CC
60
字号
/* * Copyright (C) 1997 Todd Veldhuizen <tveldhui@oonumerics.org> * All rights reserved.  Please see <blitz/blitz.h> for terms and * conditions of use. * */#ifndef BZ_MATRIX_CC#define BZ_MATRIX_CC#ifndef BZ_MATRIX_H #include <blitz/matrix.h>#endifBZ_NAMESPACE(blitz)// Matrix expression operandtemplate<typename P_numtype, typename P_structure> template<typename P_expr>Matrix<P_numtype, P_structure>& Matrix<P_numtype, P_structure>::operator=(_bz_MatExpr<P_expr> expr){    // Check for compatible structures.    // Fast evaluation (compatible structures)    // (not implemented)    // Slow evaluation    _bz_typename P_structure::T_iterator iter(rows(), cols());    while (iter)    {        data_[iter.offset()] = expr(iter.row(), iter.col());        ++iter;    }    return *this;}template<typename P_numtype, typename P_structure>ostream& operator<<(ostream& os, const Matrix<P_numtype, P_structure>& matrix){    os << "[ ";    for (int i=0; i < matrix.rows(); ++i)    {        for (int j=0; j < matrix.columns(); ++j)        {            os << setw(10) << matrix(i,j);            if ((!((j+1)%7)) && (j < matrix.cols()-1))                os << endl << "         ...";        }        if (i != matrix.rows() - 1)            os << endl  << "  ";    }    os << " ]";    return os;}BZ_NAMESPACE_END#endif // BZ_MATRIX_CC

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?