Lire en anglais

Partager via


L’expression appelle de manière récursive l’opérateur conteneur « <symboleopérateur> »

Une expression contenue dans une procédure d’opérateur utilise l’opérateur qui fait l’objet d’une définition. De cette façon, la procédure d’opérateur s’appelle elle-même en raison des types de données utilisés.

La procédure d’opérateur que vous définissez s’appellera elle-même si elle utilise le même opérateur avec l’un des éléments suivants :

  • Les mêmes opérandes pour lesquels vous définissez l’opérateur

  • Les opérandes des mêmes types de données pour lesquels vous définissez l’opérateur

  • Les opérandes des types de données qui s’étendent aux types de données pour lesquels vous définissez l’opérateur

Un appel récursif correspond à l’appel d’une procédure par elle-même. Les appels récursifs peuvent entraîner une boucle infinie, dans laquelle le contrôle passe par le même jeu d’instructions à plusieurs reprises, jusqu’à ce que votre application soit arrêtée depuis l’extérieur. Si votre code ne comprend pas un ou plusieurs tests qui peuvent être utilisés pour arrêter la récursivité, vous risquez de créer une boucle infinie.

Par défaut, ce message est un avertissement. Pour plus d’informations sur le masquage des avertissements ou leur traitement en tant qu’erreurs, consultez Configuring Warnings in Visual Basic.

ID d’erreur : BC42004

Pour corriger cette erreur

  • Si votre logique nécessite que la procédure d’opérateur s’appelle elle-même, veillez à tester au moins une condition qui doit se produire à un moment donné et utilisez ce test pour arrêter les appels récursifs.

  • Si votre logique ne nécessite pas que la procédure d’opérateur s’appelle elle-même, supprimez les appels récursifs ou remplacez-les par des instructions qui n’appellent pas leur propre procédure.

Voir aussi