コードの動作がよくわからない質問 (宿題の一部) があります。
関数「A」を所有するを取得しましたclass Father
。関数「A」は「Hello Father」を出力します。関数「A」を所有していない
2番目のクラス -> を取得しました。「こんにちは孫」を出力する関数「A」を所有
する3番目のクラス -> を取得しました。class son:public Father
class grandson:public son
関数「A」は仮想ではありません。コンパイル エラーは無視してください。ここに 80 行のコードを書きたくありませんでした。
私は別の機能を持っています:
void justPrint(const son& a) {
a.A;
}
さて、次の呼び出しで何が出力されますか:
grandson jeff;
justPrint(jeff);
私は少し混乱しています。息子は印刷関数 (A) を持っていないので、Father::A (息子は父親です..) を呼び出すと仮定します
が、息子を受け取る関数に jeff (孫) を送ります。 .そして孫は息子..
印刷されると思います
"こんにちは、お父さん"
しかし、私はとても混乱しています...助けと説明を感謝します..
2番目に、次の呼び出しを行うとどうなりますか:
justPrint(1);