我用C++编程的时候需要对函数进行重载,使函数拥有不同的参数类型,分别是父类类型和子类类型,这样用重载会不会有问题?
PHP中文网2017-04-17 15:33:56
はい、C++ のオーバーロードは、ソース ファイルをターゲット ファイルにコンパイルするときに関数名を変更することで実現されます。コンパイラーは、その関数を呼び出すときに渡されたパラメーターに基づいて呼び出しを決定します。これは、C++ のいわゆる静的多態性です。
C++ には、仮想関数、継承、およびポインター メカニズムを通じて動的ポリモーフィズムを実装するオーバーライドもあります。これは、ランタイム クラスの仮想テーブルを通じて実装されます。
伊谢尔伦2017-04-17 15:33:56
それは問題ではありません。 @伊仙さんの回答など。 ,
ただし、パラメーターがそれぞれ親型と子の型のポインターである場合は機能しません (参照は問題ありません)。