Мне было интересно, если вы, ребята, могли бы помочь мне.
Вот мой .h:
Class Doctor {
const string name;
public:
Doctor();
Doctor(string name);
Doctor & Doctor::operator=(const Doctor &doc);
}
и мой главный:
int main(){
Doctor d1 = Doctor("peter");
Doctor d2 = Doctor();
d2 = d1;
}
Я хочу сделать функцию operator =. Может кто-нибудь мне помочь? Обратите внимание на постоянного члена на Докторе.
************ EDIT: *********
Моя главная проблема в том, что я хочу, чтобы другой класс имел атрибут «Доктор», как у «Пациента» есть «Доктор». Но я хочу сменить доктора. Как будто я встречаюсь с доктором А, но я хочу видеть доктора Б. Это можно сделать с помощью функции setDoctor в моем другом классе (Pacient). Если бы я делал код, я бы сказал что-то вроде этого:
class Patient{
Doctor &d;
};
и затем измените указатель. Однако я использую базовый код, созданный одним из учителей, и его класс определен так:
class Patient{
Doctor d;
}
Но я думаю, что это невозможно сделать, потому что с помощью setDoctor () в классе Patient я бы либо сделал копию, либо изменил сам varable. Первое не имеет никакого значения, а второе невозможно из-за постоянства. Я прав?