Можно ли сделать такую весчь:
Например у меня есть общий класс вектора (математического):
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)
- Форум [C++] Константные массивы - члены классов (2008)
- Форум Использование POD членов класса до их инициализации (2017)
- Форум [C++] Что-то туплю с наследованием (2012)
- Форум Использование placement new (2014)
- Форум Стиль или как правильно (2014)
- Форум const поля однократной инициализации в классе и оптимизация (2022)
- Форум C++: несовместимые по const геттеры (2016)
- Форум Свой класс Any (2014)