Maison > développement back-end > C++ > Quelles sont les règles de surcharge des fonctions dans la surcharge de fonctions C++ ?

Quelles sont les règles de surcharge des fonctions dans la surcharge de fonctions C++ ?

PHPz
Libérer: 2024-04-14 09:45:01
original
876 Les gens l'ont consulté

Les règles de surcharge des fonctions en C++ sont les suivantes : 1. La liste des paramètres est différente (numéro, type ou ordre) ; 2. Le nombre de paramètres doit être différent ; 3. Les types de paramètres sont différents ; est différent ; 5. les qualificatifs const et de référence n'affectent pas la surcharge.

C++ 函数重载中重载函数的规则是什么?

Règles de surcharge de fonctions en surcharge de fonctions C++

La surcharge de fonctions est une fonctionnalité puissante du langage C++, qui permet à plusieurs fonctions portant le même nom d'avoir des comportements différents en fonction de leurs listes de paramètres. Afin de garantir l'utilisation correcte des fonctions surchargées, les règles suivantes doivent être respectées :

1. Les listes de paramètres doivent être différentes

Les listes de paramètres des fonctions surchargées doivent être différentes en nombre, type ou ordre. Par exemple :

void print(int x);
void print(double y);
Copier après la connexion

2. Le nombre de paramètres doit être différent

Les fonctions avec le même nombre de paramètres ne peuvent pas être surchargées. Par exemple :

// 错误,参数数量相同
void print(int x, int y);
void print(int a, int b);
Copier après la connexion

3. Les types de paramètres doivent être différents

Les fonctions avec le même nombre de paramètres mais des types différents peuvent être surchargées. Par exemple :

void print(const char* s);
void print(int x);
Copier après la connexion

4. L'ordre des paramètres doit être différent

Les fonctions avec un ordre de paramètres différent peuvent être surchargées même si elles sont du même type. Par exemple :

void swap(int& x, int& y);
void swap(double& a, double& b);
Copier après la connexion

5. Les qualificatifs const et de référence n'affectent pas la surcharge

const et les qualificatifs de référence n'affectent pas la surcharge des fonctions. Par exemple :

void print(const int& x);
void print(int& y);
Copier après la connexion

Cas pratique

Nous pouvons voir la surcharge de fonctions en action dans l'exemple de code suivant :

#include <iostream>

using namespace std;

void print(int x) {
  cout << "Integer: " << x << endl;
}

void print(double y) {
  cout << "Double: " << y << endl;
}

int main() {
  print(10);  // 调用 print(int)
  print(3.14); // 调用 print(double)
  return 0;
}
Copier après la connexion

Sortie :

Integer: 10
Double: 3.14
Copier après la connexion

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!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal