Объявление и реализация конструктора копирования в классе шаблона, C++C++

Программы на C++. Форум разработчиков
Anonymous
Объявление и реализация конструктора копирования в классе шаблона, C++

Сообщение Anonymous »

В шаблоне класса я объявляю конструктор копирования и реализую его вне класса следующим образом:

Код: Выделить всё

template
class MyClass
{
public:
MyClass(const MyClass & other);
}

template
MyClass::MyClass(const MyClass & other)
{
// Implementation
}
Но я видел другой вид объявления и реализации, где после MyClass в списке параметров нет :

Код: Выделить всё

template
class MyClass
{
public:
MyClass(const MyClass & other);
}

template
MyClass::MyClass(const MyClass & other)
{
// Implementation
}
Какой из них правильный и в чем разница между этими двумя типами объявлений?
Я пробую оба варианта в Visual Studio, и оба работают. У меня возникает ощущение, что они эквивалентны, но я в этом не уверен.

Подробнее здесь: https://stackoverflow.com/questions/793 ... te-class-c

Вернуться в «C++»