Возможно ли иметь шаблонный конструктор типа 'templateИКС(){}'? - PullRequest
9 голосов
/ 03 июня 2011
struct X{
    template<class T>
    X(){}
};

Можно ли создать экземпляр такого типа?

1 Ответ

12 голосов
/ 03 июня 2011

Да, такой конструктор может быть, но его нельзя вызвать.Все параметры шаблона шаблонного конструктора должны быть выведены из списка параметров или иметь значение по умолчанию.В вашем примере вы не можете создать экземпляр класса.

[temp.mem]

[Примечание.Шаблоны функций и шаблоны функций-членов конструктора вызываются без использования имени функции, и нет способа предоставить явный список аргументов шаблона для этих шаблонов функций.—Конечная записка]

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...