Можно ли сделать такую весчь: Например у меня есть общий класс вектора (математического): template <typename T, uint SIZE> class Vector; В нем описана куча всяких методов типа dotProduct(), magnitude() и тд. Но вот в векторе с тремя элементами мне надо считать crossProduct(). Можно ли сделать так, что при инстанцировании (это так называется? :-) этого вектора с размером 3, в нем появлялся бы еще один метод crossProduct() или добавить еще конструкторы в 2, 3 и 4 векторы. Ну например вот так: template <typename T> Vector<T, 3>::crossProduct(const Vector<T, 3> &pVector){/*...*/}; template <typename T> Vector<T, 2>::Vector<T, 2>(T pX, T pY) {/*...*/}; template <typename T> Vector<T, 3>::Vector<T, 3>(T pX, T pY, T pZ) {/*...*/}; Или придется создавать новые классы, унаследованные от Vector, и в них определять эти методы?

Ответ на:
комментарий
от anonymous

Ответ на:
комментарий
от anonymous


Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.
Похожие темы
- Форум Clang или GCC кто неправ? (2014)
- Форум Как создать массив в С++ (2022)
- Форум Использование placement new (2014)
- Форум Как гарантировать move операцию без copy операций (is_true_move_constructible)? (2021)
- Форум Свой класс Any (2014)
- Форум С++ Помогите избавиться от дублирования однотипного кода. (2018)
- Форум PIMPL без указателя (2016)
- Форум template (2007)
- Форум Mediawiki, templates (2020)
- Форум Template specialization (2014)