"operátorymbol>" operátort< tartalmazó rekurzív kifejezéshívások

Az operátori eljáráson belüli kifejezések a definiált operátort használják. Ez azt eredményezi, hogy az operátor eljárása meghívja magát a használt adattípusok miatt.

A definiált operátori eljárás akkor hívja meg magát, ha ugyanazt az operátort használja az alábbiak bármelyikével:

  • Ugyanazok az operandusok, amelyekhez az operátort definiálja;

  • Ugyanazon adattípusok operandusai, amelyekhez az operátort definiálja; Vagy

  • Azon adattípusok operandusai, amelyek az operátort meghatározó adattípusokra szélesednek.

A rekurzív hívás az, amikor egy eljárás meghívja magát. A rekurzív hívások végtelen ciklust eredményezhetnek, amelyben a vezérlő ismétlődően halad át ugyanazon utasításkészleten, amíg az alkalmazás külső leáll. Ha a kód nem tartalmaz egy vagy több, a rekurzió leállítására használható tesztet, akkor végtelen ciklust kockáztat.

Ez az üzenet alapértelmezés szerint figyelmeztetés. A figyelmeztetések elrejtésével vagy a figyelmeztetések hibákként való kezelésével kapcsolatos információkért lásd : Figyelmeztetések konfigurálása a Visual Basicben.

Hibaazonosító: BC42004

A hiba kijavítása

  • Ha a logika megköveteli, hogy az operátori eljárás meghívja magát, akkor győződjön meg arról, hogy tesztel legalább egy olyan feltételt, amely bizonyosan előfordul egy adott ponton, és ezzel a tesztel megszakítja a rekurzív hívásokat.

  • Ha a logika nem követeli meg, hogy az operátori eljárás meghívja magát, távolítsa el a rekurzív hívásokat, vagy cserélje le azokat olyan utasításokra, amelyek nem hívják meg a saját eljárásukat.

Lásd még