ホームページ  >  に質問  >  本文

C++ 函数重载的时候,参数可以用父类类型和子类类型重载吗?

我用C++编程的时候需要对函数进行重载,使函数拥有不同的参数类型,分别是父类类型和子类类型,这样用重载会不会有问题?

黄舟黄舟2765日前732

全員に返信(3)返信します

  • PHP中文网

    PHP中文网2017-04-17 15:33:56

    はい、たとえばこのコードです。

    リーリー

    出力は

    です リーリー

    返事
    0
  • PHP中文网

    PHP中文网2017-04-17 15:33:56

    1. はい、C++ のオーバーロードは、ソース ファイルをターゲット ファイルにコンパイルするときに関数名を変更することで実現されます。コンパイラーは、その関数を呼び出すときに渡されたパラメーターに基づいて呼び出しを決定します。これは、C++ のいわゆる静的多態性です。

    2. C++ には、仮想関数、継承、およびポインター メカニズムを通じて動的ポリモーフィズムを実装するオーバーライドもあります。これは、ランタイム クラスの仮想テーブルを通じて実装されます。

    返事
    0
  • 伊谢尔伦

    伊谢尔伦2017-04-17 15:33:56

    それは問題ではありません。 @伊仙さんの回答など。 ,
    ただし、パラメーターがそれぞれ親型と子の型のポインターである場合は機能しません (参照は問題ありません)。

    返事
    0
  • キャンセル返事