在头中声明的函数是否可以在不同的源文件中有多个定义——所有这些都在一个项目中



我今天接受了一次采访,小组成员问了我这个问题。我说过编译器会抛出一个错误,声明函数的多个声明。他说使用OOPS是可能的。

有人能帮我吗。

这被称为函数重载。这意味着拥有多个同名但参数不同的函数。这是OOPS中的一个概念。让我们通过一个例子来学习。假设您需要创建一个exit()函数。假设您需要一个接受退出消息(const char *)的exit函数,另一个只接受退出代码(int)。在C++中,您可以执行以下操作:

void my_exit(char *_Msg);
void my_exit(int);

但是,不允许使用不明确的参数类型。考虑以下内容:

void print_decimal(double);
void print_decimal(float);

这将产生一个错误,因为像12.5这样的数字既可以表示为浮点值,也可以表示为双精度值(这会混淆编译器)。

(如果我犯了错误,请告诉我,祝你度过美好的一天!)

相关内容

  • 没有找到相关文章