因此,我給出了一個std::tuple<T...>
,我想創建一個接受T...
的函數指針,目前這是我所得到的;將std :: tuple <T...>轉換爲T
template<typename... Arguments>
using FunctionPointer = void (*)(Arguments...);
using FunctionPtr = FunctionPointer<typename std::tuple_element<0, V>::type,
typename std::tuple_element<1, V>::type,
typename std::tuple_element<2, V>::type>;
不過,我似乎無法找到一個方法來做到這一點,沒有從0, ..., tuple_size<V>::value
手動輸入每一個指標。 FunctionPtr被定義在一個上下文中,其中V=std::tuple<T...>
(也已經有一個可變模板(因此我不能直接通過T...
))
我想我需要生成一些索引列表,並做一些黑魔法..
http://stackoverflow.com/questions/7858817/unpacking-a-tuple-to-call-a-matching-function-pointer – Morwenn 2013-03-07 11:31:48
@Morwenn:那不需要我添加另一個可變參數模板嗎? – Skeen 2013-03-07 11:33:47