LINUX.ORG.RU

Специализация шаблонов для перегруженных оперторов.


0

0

Ставлю некоторые эксперименты.
Хотелось бы со знатоками обсудить, на сколько возможно вот это:

template<class T> class IDivideble
{
public:
template<class U> virtual T& operator/(IDivideble<U>&) = 0;
template<> virtual T& operator/<int>(int) = 0;
template<> virtual T& operator/<double>(double) = 0;
template<> virtual T& operator/<float>(float) = 0;
template<> virtual T& operator/<char>(char) = 0;
virtual ~IDivideble(){}
}

★★

ЕМНИП, шаблоны методов не могут быть виртуальными.

const86 ★★★★★
()

Для таких вещей принято использовать концепции, см concept в boost.

Begemoth ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.