MST

星途 面试题库

面试题:C++ 函数重载在处理不同数据类型输入时的应用技巧

假设有一个程序需要实现一个计算面积的功能,对于圆形和矩形都要计算面积。请使用C++ 函数重载来实现这个功能,分别给出圆形和矩形面积计算函数的声明和实现,并且说明在函数重载过程中是如何区分不同函数的。
20.5万 热度难度
编程语言C++

知识考点

AI 面试

面试题答案

一键面试

圆形面积计算函数

  1. 函数声明
double calculateArea(double radius);
  1. 函数实现
double calculateArea(double radius) {
    const double pi = 3.14159265358979323846;
    return pi * radius * radius;
}

矩形面积计算函数

  1. 函数声明
double calculateArea(double length, double width);
  1. 函数实现
double calculateArea(double length, double width) {
    return length * width;
}

函数重载区分方式

在函数重载过程中,C++ 通过函数参数的个数和类型来区分不同的函数。对于上述例子,calculateArea(double radius) 函数接受一个 double 类型的参数,表示圆的半径;而 calculateArea(double length, double width) 函数接受两个 double 类型的参数,分别表示矩形的长和宽。这两个函数虽然名字相同,但参数列表不同,因此构成了函数重载。当调用 calculateArea 函数时,编译器会根据传入参数的个数和类型,选择合适的函数版本进行调用。