template <typename T>class A {public: void func(const T & a ) { } }; class B { }; int main(){ A<B*> a; const B b = B(); a.func(&b);}