How can I call make_shared or make_unique on a class that has a templated constructor? Here's an example:
class A
{
    template <class T> A() { ... }
};
make_shared<A<T>>() doesn't make sense (nor does it compile), since that would rather be for a templated class, not a templated constructor.
Neither make_shared<A><T>() nor make_shared<A>(<T>()) compile---nor look like they should. Ditto on make_shared<A, T>()
Is there any way to specify the template for the constructor call in the call to make_shared? I assume the answer would apply for make_unique; if it doesn't, please indicate that. Thanks!
Aucun commentaire:
Enregistrer un commentaire