vector_initialiser.hpp
Go to the documentation of this file.
1 
6 #ifndef VECTOR_INITIALISER_HPP
7 #define VECTOR_INITIALISER_HPP 1
8 
9 #include <vector>
10 
11 using std::vector;
12 
14 template <class T> class VectorInitialiser
15 {
16 public:
17 
21  VectorInitialiser(const T& t):
22  list_(1,t) {}
23 
24  VectorInitialiser(void): list_() {}
25 
29  const vector<T>& operator()(void) const
30  {
31  return list_;
32  }
33 
39  {
40  list_.push_back(t);
41  return *this;
42  }
43 
49  {
50  list_.push_back(t);
51  return *this;
52  }
53 
54 private:
55  vector<T> list_;
56 };
57 
58 #endif // VECTOR_INITIALISER_HPP
VectorInitialiser & operator[](T t)
Append operator (pass by value)
Class for initialising vectors.
const vector< T > & operator()(void) const
Termination operator.
VectorInitialiser & operator()(const T &t)
Append operator.
VectorInitialiser(const T &t)
Class constructor.