メインページ   クラス階層   構成   ファイル一覧   構成メンバ   ファイルメンバ  

MArray2.h

解説を見る。
00001 // Template array classes with like-type math ops
00002 /*
00003 
00004 Copyright (C) 1996, 1997 John W. Eaton
00005 
00006 This file is part of Octave.
00007 
00008 Octave is free software; you can redistribute it and/or modify it
00009 under the terms of the GNU General Public License as published by the
00010 Free Software Foundation; either version 2, or (at your option) any
00011 later version.
00012 
00013 Octave is distributed in the hope that it will be useful, but WITHOUT
00014 ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
00015 FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
00016 for more details.
00017 
00018 You should have received a copy of the GNU General Public License
00019 along with Octave; see the file COPYING.  If not, write to the Free
00020 Software Foundation, 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
00021 
00022 */
00023 
00024 #if defined (__GNUG__) && defined (USE_PRAGMA_INTERFACE_IMPLEMENTATION)
00025 #pragma interface
00026 #endif
00027 
00028 #if !defined (octave_MArray2_h)
00029 #define octave_MArray2_h 1
00030 
00031 #include "Array2.h"
00032 
00033 // Two dimensional array with math ops.
00034 
00035 // But first, some preprocessor abuse...
00036 
00037 #include "MArray-defs.h"
00038 
00039 MARRAY_OPS_FORWARD_DECLS (MArray2)
00040 
00041 template <class T>
00042 class
00043 MArray2 : public Array2<T>
00044 {
00045 protected:
00046 
00047   MArray2 (T *d, int n, int m) : Array2<T> (d, n, m) { }
00048 
00049 public:
00050 
00051   MArray2 (void) : Array2<T> () { }
00052 
00053   MArray2 (int n, int m) : Array2<T> (n, m) { }
00054 
00055   MArray2 (int n, int m, const T& val) : Array2<T> (n, m, val) { }
00056 
00057   MArray2 (const MArray2<T>& a) : Array2<T> (a) { }
00058 
00059   MArray2 (const Array2<T>& a) : Array2<T> (a) { }
00060 
00061   ~MArray2 (void) { }
00062 
00063   MArray2<T>& operator = (const MArray2<T>& a)
00064     {
00065       Array2<T>::operator = (a);
00066       return *this;
00067     }
00068 
00069   MArray2<T>& insert (const Array2<T>& a, int r, int c)
00070   {
00071     Array2<T>::insert (a, r, c);
00072     return *this;
00073   }
00074 
00075   MArray2<T> transpose (void) const { return Array2<T>::transpose (); }
00076 
00077   // Currently, the OPS functions don't need to be friends, but that
00078   // may change.
00079 
00080   // MARRAY_OPS_FRIEND_DECLS (MArray2)
00081 };
00082 
00083 #endif
00084 
00085 /*
00086 ;;; Local Variables: ***
00087 ;;; mode: C++ ***
00088 ;;; End: ***
00089 */

Wed Dec 29 11:51:45 2004に生成されました。 doxygen1.2.18
SEO [PR] 爆速!無料ブログ 無料ホームページ開設 無料ライブ放送