Многомерные массивы через шаблоны
Jul. 20th, 2007 02:42 pm![[personal profile]](https://www.dreamwidth.org/img/silk/identity/user.png)
Собственно вот:
template
template
[Error: Irreparable invalid markup ('<class [...] t,>') in entry. Owner must fix manually. Raw contents below.]
Собственно вот:
template <class T, int N> struct MultiDimVec: std::vector<MultiDimVec<T, N-1> > { };
template <class T> struct MultiDimVec<T, 1>: std::vector<T> { };
Правда пока не придумал, как удобно задавать размер... Да и дорого выйдет, массив на основе одного блока памяти пошустрее будет, а с размерностью больше трех, пока не довелось столкнуться и думаю не доведется.
template <class T, int N> struct MultiDimVec: std::vector<MultiDimVec<T, N-1> > { };
template <class T> struct MultiDimVec<T, 1>: std::vector<T> { };
Правда пока не придумал, как удобно задавать размер... Да и дорого выйдет, массив на основе одного блока памяти пошустрее будет, а с размерностью больше трех, пока не довелось столкнуться и думаю не доведется.