Reputation: 529
I would like to make typedef for function pointer which has stl container as argument and this container has unknown type. Something like this:
typedef void (* TouchCallBack)(GLRenderer*, const MotionEvent&, std::vector<T >);
it's possible? (especially in c++ 03)
Upvotes: 23
Views: 18396
Reputation: 61910
I don't know of any C++03 solution exactly like that, and it's not built into the language, but in C++11, this is possible with using
aliases:
template<typename T>
using TouchCallBack = void (*)(GLRenderer*, const MotionEvent&, std::vector<T >);
One workaround for C++03 is using a struct:
template<typename T>
struct TouchCallBack {
typedef void (*type)(GLRenderer*, const MotionEvent&, std::vector<T >);
};
//use like TouchCallBack<int>::type
Upvotes: 41