C ++中运行时和编译时多态性之间的区别
Difference between runtime and compile time polymorphism in c++
我对这两种多态性感到困惑,请提供简单的示例来帮助我,因为我是 c++ 的新手。只给我一些基本的想法。
多态性意味着编写通用代码以在不知道其确切类型的情况下处理不同的对象。
静态绑定是一种属性,允许编译器解析在编译时调用的类型。但是可以有没有静态绑定 polymorphism.The 编译时多态性是使用函数和运算符重载实现的,其中编译器具有关于数据类型的所有先验知识,但没有。所需参数的数量,以便它可以在编译时 select 适当的函数。
动态绑定是一个 属性,允许在 运行 时决定类型。但是可以有没有多态性的动态绑定。如果动态绑定用于编写与层次结构中多个 classes 对象一起工作的通用代码,那么它将是动态多态性。 运行 时间多态性由虚函数实现(在基class 中使用关键字virtual 声明的成员函数,其派生class 以相同的名称重新定义)。
我对这两种多态性感到困惑,请提供简单的示例来帮助我,因为我是 c++ 的新手。只给我一些基本的想法。
多态性意味着编写通用代码以在不知道其确切类型的情况下处理不同的对象。
静态绑定是一种属性,允许编译器解析在编译时调用的类型。但是可以有没有静态绑定 polymorphism.The 编译时多态性是使用函数和运算符重载实现的,其中编译器具有关于数据类型的所有先验知识,但没有。所需参数的数量,以便它可以在编译时 select 适当的函数。
动态绑定是一个 属性,允许在 运行 时决定类型。但是可以有没有多态性的动态绑定。如果动态绑定用于编写与层次结构中多个 classes 对象一起工作的通用代码,那么它将是动态多态性。 运行 时间多态性由虚函数实现(在基class 中使用关键字virtual 声明的成员函数,其派生class 以相同的名称重新定义)。