Advertisement
Guest User

Initializer list

a guest
Mar 8th, 2014
159
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 0.48 KB | None | 0 0
  1. // Initializer list
  2. #include <initializer_list>
  3.  
  4. template < int n >
  5. class Vec
  6. {
  7. private:
  8.     float e[n];
  9. public:
  10.     Vec(std::initializer_list<float> params);
  11.     constexpr int GetSize( void ) const { return n; }
  12. };
  13.  
  14. template < int n >
  15. Vec<n>::Vec<n>(std::initializer_list<float> params) {
  16.     static_assert(params.count() == n, “size mismatch”); // C++11
  17.     std::initializer_list<float>::iterator it = params.begin();
  18.     for (float &x: e) { // C++11 foreach
  19.         x = *it;
  20.         ++it;
  21.     }
  22. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement