皆さんが私を助けてくれるかどうか疑問に思っていました。
ここに私の.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= 関数を実行したい。誰でも私を助けることができますか?Doctor の const メンバーに注目してください。
************編集:************ 私の主な問題は、Pacient に Doctor があるように、別のクラスに Doctor という属性を持たせたいということです。しかし、私は私の医者を変えることができるようにしたい. 私は医者 A を見ているように、私は医者 B に会いたいと思っています。コードを実行するのが私だったら、次のように言います。
class Patient{
Doctor &d;
};
ポインタを変更します。ただし、教師の1人が作成したベースコードを使用しており、クラスは次のように定義されています。
class Patient{
Doctor d;
}
しかし、Patient クラスの setDoctor() を使用すると、コピーを作成するか、変数自体を変更するため、これは不可能だと思います。最初のものは違いがなく、2番目のものは const のために不可能です。私は正しいですか?