diff options
author | astrojhgu <astrojhgu@ed2142bd-67ad-457f-ba7c-d818d4011675> | 2008-12-15 07:26:12 +0000 |
---|---|---|
committer | astrojhgu <astrojhgu@ed2142bd-67ad-457f-ba7c-d818d4011675> | 2008-12-15 07:26:12 +0000 |
commit | 1f4a944064bc42284c33e6b755353d191cf288e8 (patch) | |
tree | c8cb2253dea5f395e0f867aa6976433bd3eb00de /models/vecn.hpp | |
download | opt-utilities-1f4a944064bc42284c33e6b755353d191cf288e8.tar.bz2 |
git-svn-id: file:///home/svn/opt_utilities@1 ed2142bd-67ad-457f-ba7c-d818d4011675
Diffstat (limited to 'models/vecn.hpp')
-rw-r--r-- | models/vecn.hpp | 62 |
1 files changed, 62 insertions, 0 deletions
diff --git a/models/vecn.hpp b/models/vecn.hpp new file mode 100644 index 0000000..cac1436 --- /dev/null +++ b/models/vecn.hpp @@ -0,0 +1,62 @@ +#ifndef VECN_HPP +#define VECN_HPP +#include <iostream> +namespace opt_utilities +{ + template <typename T,int n> + class vecn + { + public: + T data[n]; + public: + T& operator[](int i) + { + return data[i]; + } + + const T& operator[](int i)const + { + return data[i]; + } + + vecn() + { + for(int i=0;i<n;++i) + { + data[i]=0; + } + } + + }; + + template <typename T,int n> + std::istream& operator>>(std::istream& is,vecn<T,n>& p) + { + for(int i=0;i<n;++i) + { + is>>p[i]; + // std::cout<<i<<std::endl; + } + return is; + } + + + template <typename T,int n> + std::ostream& operator<<(std::ostream& os,const vecn<T,n>& p) + { + os<<'['; + for(int i=0;i<n;++i) + { + os<<p[i]<<","; + // std::cout<<i<<std::endl; + } + os<<']'; + return os; + } + + + +}; + +#endif +//EOF |