所以我今天遇到了有关 C++ 模板编程的问题,谁能向我解释一下什么是 A(*)(B) 作为模板参数?
template <class X, class Y, class A, class B>
struct replace_type_impl<A(*)(B),X,Y,false>
{
typedef typename replace_type<A,X,Y>::type (*type)(typename replace_type<B,X,Y>::type);
};
最佳答案
A (*)(B)
类型是指向函数的指针类型,该函数接受一个 B
类型的参数并返回一个 类型的值A
.
这只是另一种类型。您的代码是类模板 replace_type_impl
的部分特化实例。
关于c++ - 这个模板参数是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8477857/