Re[2]: Два типа в одном параметре темплейта
От: Аноним  
Дата: 23.12.08 17:18
Оценка:
B>template<class R, class T>
B>R CallMe(R (T::*mem_fn)()) { T t; return (t.*mem_fn)(); }

Это другая конструкция с точки зрения типов — здесь такая же разница как между следующими двумя функциями:

template <int parameter>
void Function ()
{
}

void Function (int parameter)
{
}


Чувствуете разницу?

Но, похоже, C++ не умеет «в одном параметре передавать два типа».

Так что, уродскую конструкцию

CallMe<MyInterface, &MyInterface::MyMethod>();


не заменишь на

CallMe<&MyInterface::MyMethod>();
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.