重载函数::调用哪一个

Overloaded Functions:: Which one gets called?

本文关键字:哪一个 调用 重载 函数      更新时间:2023-10-16

我有两个重载函数:

void function(int x, int y, int z = 0);
void function(int x, int y)

现在,当我从 main 调用它时:

int a = 10;
int b = 20;
function(a,b);

将调用哪个版本的function

您的代码无法编译。我不确定为什么要为 z 分配一个值,但如果是:

void function(int x, int y, int z);
void function(int x, int y);

你打电话

function(a,b);

假设您定义了函数,则会调用第二个函数。

**

编辑:**证明这一点的一种简单方法是尝试在编译器中运行代码。这将让您看到行为。