自定义matrix类(数据结构与算法C++)

dsexceptions.h: Simple exception classes

        #ifndef DSEXCEPTIONS_H_
        #define DSEXCEPTIONS_H_

        class Underflow { };
        class Overflow  { };
        class OutOfMemory { };
        class BadIterator { };

        #endif

matrix.h: Simple matrix class

        #ifndef MATRIX_H
        #define MATRIX_H

        #include "vector.h"

        template 
        class matrix
        {
          public:
            matrix( int rows, int cols ) : array( rows )
            {
                for( int i = 0; i < rows; i++ )
                    array[ i ].resize( cols );
            }
            matrix( const matrix & rhs ) : array( rhs.array ) { }
            const vector & operator[]( int row ) const
              { return array[ row ]; }
            vector & operator[]( int row )
              { return array[ row ]; }
            int numrows( ) const
              { return array.size( ); }
            int numcols( ) const
              { return numrows( ) ? array[ 0 ].size( ) : 0; }
          private:
            vector< vector > array;
        };

        #endif


 
  

你可能感兴趣的:(数据结构,C++)