如何获取C+ 11中依赖功能指针模板参数的第一个参数的类型?
当前代码:
#include <utility>
template <typename T, void (*D)(T *)>
std::pair<T *, void (*)(T *)> f(T * const t)
{
// ...
return std::make_pair(t, D); // need `T` and `D` here
}
void d(int *t);
void g()
{
auto something = f<int, d>(new int {5});
}
我想要什么:
#include <utility>
template </* fill here: only `D` */>
std::pair<T *, void (*)(T *)> f(T * const t)
{
// ...
return std::make_pair(t, D); // need `T` and `D` here
}
void d(int *t);
void g()
{
auto something = f<d>(new int {5});
}
C ++ 11中是否可以?
Current code:
#include <utility>
template <typename T, void (*D)(T *)>
std::pair<T *, void (*)(T *)> f(T * const t)
{
// ...
return std::make_pair(t, D); // need `T` and `D` here
}
void d(int *t);
void g()
{
auto something = f<int, d>(new int {5});
}
What I'd like:
#include <utility>
template </* fill here: only `D` */>
std::pair<T *, void (*)(T *)> f(T * const t)
{
// ...
return std::make_pair(t, D); // need `T` and `D` here
}
void d(int *t);
void g()
{
auto something = f<d>(new int {5});
}
Is this possible in C++11?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论