我不确定问题标题是否正确。
我正在寻找一种方法来根据策略类的模板别名选择 A 类的模板特化之一。有没有办法做到这一点?
// g++ -Wall -std=c++11 p.cpp
template <class T>
class StorageCPU
{
T * ptr ;
} ;
class PolicyCPU
{
public:
template <class T>
using Storage = StorageCPU <T> ;
// Many other settings...
} ;
template <template <class> class Storage>
class A ;
template <>
class A <StorageCPU>
{ } ;
int main ()
{
A <StorageCPU> a1 ;
A <PolicyCPU::Storage> a2 ; // <--- this one fails
return 0 ;
}