【C++ 多态】—— 礼器九鼎,釉下乾坤,多态中的 “风水寻龙诀“
多态的概念
众所周知,面向对象有三大特性,封装、继承和多态!
多态(
Polymorphism
) 是面向对象编程的核心特性,允许用统一的接口操作不同类型的对象,并根据对象实际类型执行不同的行为。C++中的多态分为编译时多态和运行时多态。
编译时多态(静态多态)
编译时多态(
Compile-Time Polymorphism
) 又称为 静态多态,是一种在 代码编译阶段就能确定具体调用行为的机制。它的核心特点是 基于静态类型系统,通过代码结构直接决定调用哪个函数或操作,无需运行时动态查找。
编译时多态的实现方式有,函数重载,运算符重载和模板。
函数重载 Function Overloading
- 通过 参数列表不同(类型/数量/顺序)定义同名函数
示例:
代码语言:javascript代码运行次数:0运行复制void print(int x)
{
std::cout << "int: " << x << std::endl;
}
void print(double x)
{
std::cout << "double: " << x << std::endl;
}
void print(const char *s)
{
std::cout << "const char *: " << s << std::endl;
}
调用策略:
代码语言:javascript代码运行次数:0运行复制int main()
{
print(10); // 调用 print(int)
print(3.14); // 调用 print(double)
print("Hello"); // 调用 print(const char*)
}
输出:
代码语言:javascript代码运行次数:0运行复制int: 10
double: 3.14
const char *: Hello
发布者:admin,转转请注明出处:http://www.yc00.com/web/1748050098a4724065.html有关函数重载的原理及应用不再过多说明,详见博文
评论列表(0条)