[C++] Шаблонный конструктор
компилятор ругается:
class A
{
public:
template <class T> A { }
};
int main
{
A *a;
a = reinterpret_cast<A*>(new char (sizeof(A;
a->A::A<float>
a->A::~A;
}
Но даже если бы этот грязный хак и сработал, то это было бы очень-очень плохо. Так что советую пересмотреть свои классы, конструкторы и прочее.
мне вот интересно, зачем это нужно
Чтобы базовый класс был одного типа. Если делать класс шаблонным, то типы будут разные.
class Q
{
template <typename T>
private Q(T *dummy){}
template <typename T>
public static Q * Create<T>
{
return new QT*)0);
}
};
Спасибо.
Оставить комментарий
erotic
Есть нешаблонный класс с шаблонным конструктором, шаблон по типу. У конструктора параметров нет, так что тип по параметрам не выводится и должен быть указан явно. И тут главный косяк:Пока приходится обходиться шаблонной функцией, которую надо вызвать сразу после конструктора, с ней-то проблем нет. Но может быть кто-нибудь знает - можно ли все-таки вызвать шаблонный конструктор?