Maison >développement back-end >C++ >Surcharge de fonctions C++ et paramètres par défaut de la fonction

Surcharge de fonctions C++ et paramètres par défaut de la fonction

王林
王林original
2024-04-13 18:03:02732parcourir

Oui, C++ autorise la surcharge de fonctions et les paramètres par défaut des fonctions. La surcharge de fonctions crée des fonctions avec le même nom mais des listes de paramètres différentes, et le compilateur décide quelle surcharge appeler en fonction des types de paramètres. Les paramètres par défaut de la fonction peuvent fournir des valeurs par défaut pour certains paramètres et utiliser des valeurs par défaut lorsqu'aucun paramètre n'est fourni.

C++ 函数重载和函数默认参数

Surcharge de fonctions C++ et paramètres par défaut des fonctions

Surcharge de fonctions

La surcharge de fonctions nous permet de définir plusieurs fonctions avec le même nom mais des listes de paramètres différentes dans la même classe. Le compilateur décidera quelle fonction surchargée appeler en fonction des types d’arguments fournis lors de l’appel.

Syntaxe :

return_type function_name(parameter_list_1);
return_type function_name(parameter_list_2);
...

Paramètres par défaut de la fonction

Les paramètres par défaut de la fonction nous permettent de fournir des valeurs par défaut pour certains paramètres lors de la déclaration d'une fonction. Si ces paramètres ne sont pas fournis lors de l'appel, les valeurs par défaut sont utilisées.

Syntaxe :

return_type function_name(parameter_type parameter_name = default_value);

Cas pratique

Supposons que nous ayons une fonction calculateArea, qui peut calculer l'aire d'un cercle ou d'un rectangle. Nous pouvons le faire en utilisant la surcharge de fonctions : calculateArea,该函数可以计算圆形或矩形的面积。我们可以使用函数重载来实现:

#include <iostream>

using namespace std;

// 计算圆形的面积
double calculateArea(double radius) {
  return 3.14159 * radius * radius;
}

// 计算矩形的面积
double calculateArea(double length, double width) {
  return length * width;
}

int main() {
  double radius, length, width;

  // 计算圆形的面积
  cout << "Enter the radius: ";
  cin >> radius;
  cout << "The area of the circle is: " << calculateArea(radius) << endl;

  // 计算矩形的面积
  cout << "Enter the length and width of the rectangle: ";
  cin >> length >> width;
  cout << "The area of the rectangle is: " << calculateArea(length, width) << endl;

  return 0;
}

在该案例中,calculateArea 函数具有两个重载:

  • calculateArea(double radius) 用于计算圆形的面积,并使用函数默认参数为 radius 指定默认值 0。
  • calculateArea(double length, double width)rrreee
  • Dans ce cas, la fonction calculateArea a deux surcharges :
  • calculateArea(double radius) Utilisé pour calcule l'aire d'un cercle et utilise l'argument par défaut de la fonction pour spécifier une valeur par défaut de 0 pour rayon. 🎜
  • calculateArea(double length, double width) est utilisé pour calculer l'aire d'un rectangle sans utiliser les paramètres par défaut de la fonction. 🎜🎜

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn