Les Snippets

Connexion

Opérateur AndAlso OrElse

Niveau requis pour utiliser/comprendre cette source : 1 ( Débutant )
Créé le 26/08/2006 19:10:41 et initié par PCPT [Liste]
Date de mise à jour : 26/08/2006 19:22:20
Vue : 6780
Catégorie(s) : Maths, Trucs & Astuces
Langages dispo pour ce code :
- VB6, VBA
- Windev
- ObjectiveCaml
- Voir tous les langages pour ce code snippet



Langage : VB6 , VBA
Date ajout : 26/08/2006
Posté par PCPT [Liste]
DateMAJ : 26/08/2006
' ces 2 opérateurs existent pour VB.NET mais pas pour VB6.
' le vrai but de ces opérateurs est de ne pas "évaluer" le 2e argument.
' avec ces fonctions le but n'est que pratique pour la syntaxe mais les paramètres
' sont forcéments évalués tous les 2 en entrant dans la fonction

Function IfAndAlso(ByVal bParam1 As BooleanByVal bParam2 As BooleanAs Boolean 
'VB# - si la condition1 est fausse, la deuxième n'est pas testé et _
       le code se rend directement au end if 

    If bParam1 Then 
        IfAndAlso = bParam2 
    Else 
        IfAndAlso = False 
    End If 
End Function 

Function IfOrElse(ByVal bParam1 As BooleanByVal bParam2 As BooleanAs Boolean 
'VB# - si la condition1 est vrai, la deuxième n'est pas testé et _
       le bloc d'instruction est executé 

    If bParam1 Then 
        IfOrElse = True 
    Else 
        IfOrElse = bParam2 
    End If 
End Function 


'   exemple d'utilisation en VB6 (à voir en mode pas à pas - F8)
Private Sub Form_Load() 
    Dim i%, j%, k%, l% 
    i = 3: j = 6: k = 2: l = 6 

    If IfAndAlso(i = 2, j = 6) Then 
        Debug.Print "condition 1 ok" 
    End If 

    If IfAndAlso(i = 3, j = 6) Then 
        Debug.Print "condition 2 ok" 
    End If 

    If IfOrElse(i = 2, j = 6) Then 
        Debug.Print "condition 3 ok" 
    End If 

    If IfOrElse(i = 3, j = 6) Then 
        Debug.Print "condition 4 ok" 
    End If 

'   condition ok si (i=3 et k=2) et (j=3 ou l=6)
    If IfAndAlso(IfAndAlso(i = 3, k = 2), IfOrElse(j = 3, l = 6)) Then 
        Debug.Print "condition 5 ok" 
    End If 

    Unload Me 
End Sub

Remarque :
fonctions faites à partir du tutorial :
http://www.vbfrance.com/tutoriaux/NOUVEAUX-OPERATEURS-LOGIQUES-VB2005_486.aspx

Snippets en rapport avec : Opérateur, Andalso, Orelse



Codes sources en rapport avec : Opérateur, Andalso, Orelse

{C / C++ / C++.NET} BATAILLE NAVALE CONTRE IA (C++)
Voici un petit jeu de bataille navale qui se joue contre l'IA. Ceux qui ne jurent que par de belles...

{C / C++ / C++.NET} CONSTRUCTEURS ET OPERATEUR + HERITAGE SIMPLE
Exemple de programmation avec des constructeurs,destructeur Utilisation de quelques type opérateurs...

{PHP} IF - ELSEIF - ELSE AVEC L'OPÉRATEUR TERNAIRE
Alors voila, moi qui aime bien l'opérateur ternaire pour sa simplicité, je me suis demandé comment o...

{Delphi} APPLICATION D'UN OPÉRATEUR LOGIQUE SUR DEUX BYTES - REPRÉSENTATION BINAIRE
Visualisation binaire des deux bytes et du résultat obtenu en fonction de l'opérateur logique qui le...

{Python} XCHAT-PYTHON -- AUTO-OP
Auto-op Version 0.1 Ce script permet aux utilisateurs enregistrés de s'auto-oper sans que l'opera...

{Delphi} OPÉRATEURS BOOLÉENS - TABLE DE VÉRITÉ - ON S'AMUSE AVEC LES MATHÉMATIQUES ;-)
Cours de rattrapage pour ceux qui auraient fait l'impasse pendant les cours de maths, comme moi... ...