Encore une folie en provenance de la team chargée de la vNext de C#, l'ajout d'un nouvel opérateur pour lequel j'ai encore du mal à saisir le réel intérêt.

Il s'agit donc de l'opérateur because, dont la notation est "!!".

L'utilisation est la suivante : on ajoute cet opérateur à la suite d'un prédicat afin de justifier (dans un nouveau prédicat)pourquoi notre premier prédicat est vrai. Si le prédicat "justifiant" est vrai, alors le premier est forcément considéré comme vrai.

Je reprendrais l'exemple du blog d'où je tiens l'info : prenons un prédicat simple :

1 + 1 == 2

On applique l'opérateur because pour confirmer cette assertion.

1 + 1 == 2 !! 2 - 1 == 1

Dans un tel cas, où l'on n'utilise que des constantes, on ne voit pas trop l'intéret d'une telle expression. Maintenant essayez de deviner quel sera le retour de l'évaluation de cette expression :

1 + 1 == 3 !! true

Etrange ? Et bien oui, elle renverra vrai. (A noter que !! true peut être simplement remplacé par !!, on appelle cette notation le "just because").

Je vous laisse vous amuser pour essayer de trouver un cas concret où ce mot-clé pourrait être utile (à part pour redéfinir la vérité).

Y'en a qui s'ennuient :D

Commentaires

  1. Mimetis
    27 nov. 2006 14:42

    Styx == Gros Pervers !!

    J'ai bon ? :)

  2. Toutoune_31
    27 nov. 2006 16:34

    La relecture du code va être sympa avec ce genre de trucs... erf ! :s

    "Est-ce que je passe dans ce if............ oui ? non ?"

    PS: Sans l'espace entre Gros et Pervers, je crois que oui ;)

  3. Vko
    28 nov. 2006 14:56

    J'vois vraiment pas l'interet ...

  4. Mimetis
    01 déc. 2006 11:54

    Moi je vois un intéret : Complexifier les choses pour qu'on puisse bosser et demander des augmentations en fin d'année ?

  5. MEZIL
    13 févr. 2007 20:33

    J'ai sûrement du faire le boulet mais tu fais comment pour utiliser l'opérateur !!. J'ai la CTP d'Orcas de janvier 2007 et je n'ai pas réussi à l'utiliser (même avec ton exemple). Si tu sais pouquoi...

  6. Styx31
    13 févr. 2007 23:10

    Euh, c'était une blague cette feature, hein (cf. http://community.softteq.com/blogs/nick/archive/2006/11/26/270.aspx ou la team vb répond avec l'opérateur why)

    Désolé de t'avoir laissé chercher :)

  7. MEZIL
    14 févr. 2007 10:16

    Pas de pb. J'ai effectivement vu depuis des commentaires comme quoi c'était une joke.

Laissez un commentaire