Matvec: Porovnání verzí
m kategorie |
m kategorie |
||
Řádek 57: | Řádek 57: | ||
;matvec-demo: [http://gama.fsv.cvut.cz/~cepek/gama/archive/matvec/ http://gama.fsv.cvut.cz/~cepek/gama/archive/matvec/] | ;matvec-demo: [http://gama.fsv.cvut.cz/~cepek/gama/archive/matvec/ http://gama.fsv.cvut.cz/~cepek/gama/archive/matvec/] | ||
[[Category | [[Category:Programování]] |
Verze z 23. 7. 2006, 08:30
Matvec je malá C++ knihovna template tříd a funkcí, která je samostatnou součástí projektu GNU Gama. Knihovna matvec je součástí distribuce GNU Gama, poslední verzi lze získat také z CVS archivu příkazem
cvs -d:pserver:anonymous@cvs.sv.gnu.org:/sources/gama co gama/lib/matvec
Všechny objekty knihovny matvec jsou definovány v prostoru jmen GNU_Gama, implicitní výjimka je v šablonách definována jako třída GNU_Gama::Exception::matvec.
namespace GNU_gama { typedef size_t Index; namespace Exception { enum { BadRank, BadIndex, Singular, BadRegularization, NoConvergence, ZeroDivision, NonPositiveDefinite, NotImplemented, StreamError }; class base { public: virtual ~base() { } }; class matvec : public base { public: const int error; const char* description; matvec(int e, const char* t) : error(e), description(t) { } }; } }
Třída Exception::base je zde definována pro jako bázová třída všech výjimek v projektu GNU Gama. Výčtový typ umožňuje spolu s popisem bližší specifikaci vyvolané výjimky.
- poznámka
- Starší verze knihovny byly definováný v prostoru jmen gMatVec a používaly též jiné umístění hlavičkových souborů. Při přechodu na novou verzi knihovny matvec> je proto nutné změnit následující jména, například pomocí dávkového editoru sed
s/gmatvec/matvec/g s/gMatVec/GNU_gama/g s/Exception/Exception::matvec/g