В качестве одного из параметров шаблона класса мне нужно использовать указатель на член:
template <class Base, typename Member, Member Base::*m>
class MemPtrTestUgly
{
...
};
Это необходимо использовать как
struct S
{
int t;
}
MembPtrTestUgly <S, int, &S::t> m;
Но я хочу использовать это так:
MemPtrTestNice<S, &S::t> m;
Тип элемента выводится из указателя элемента. Я не могу использовать шаблон функции, так как класс MemPtrTest
не предполагается создавать (есть только некоторые статические функции, которые будут использоваться). Есть ли способ сделать это на чистом C ++ 03 (без Boost или TR1)?