Я создал класс, у которого есть функция друга, и когда я объявляю его, проблем нет, но когда я пишу его код, он возвращает мне ошибку:
Нестандартное определение «изменения» не соответствует ни одному объявлению в «MyClass».
Вот код
template <class T>
class MyClass {
private:
T a;
public:
MyClass(T);
~MyClass();
friend void change(MyClass);
};
template <class T>
MyClass <T> :: MyClass(T value) {
a = value;
}
template <class T>
MyClass <T> :: ~MyClass() {}
template <class T>
void MyClass <T> :: change(MyClass class) { //Out-of-line definition of 'change' does not match any declaration in 'MyClass <T>'
a = class.a;
}
friend
? Какую проблему вы пытаетесь решить? Как вы планируете использоватьchange
? - person t.niese   schedule 03.12.2020