мне нужно код для компиляции на Visual Studio 2013C++ 11 МЕТОДИЧЕСКИЕ шаблон наложения спектров для указателей на функции
Первоначально я имел:
class P
{
typedef void* (P::*FunctionPtr)(void);
typedef void* (*T_ptr)(void*);
private:
T_ptr getCompatibleFunctionPointer(FunctionPtr funcPtr);
T_ptr m_t_ptr;
public:
[omitting constructors, etc]
}
Теперь добавление шаблонов требует ключевого слова с помощью так что я проверено:
typedef void* (*T_ptr)(void*);
//tried this:
template<typename objectThread>
using FunctionPtr = void(P<objectThread>::*)(void);
//also tried:
template<typename objectThread>
using FunctionPtr = void(P< typename objectThread>::*)(void);
//also tried:
template<typename objectThread>
using FunctionPtr = void(P< typename objectThread>*)(void);
template<typename objectThread>
class P{
private:
template<typename objectThread>
T_ptr P<objectThread>::getCompatibleFunctionPointer(FunctionPtr funcPtr) {}
T_ptr m_t_ptr;
};
Я не могу найти способ добиться того, что мне нужно. Мне нужно сохранить шаблоны и не использовать Boost (на всякий случай).