• [^] # Re: pas possible ?

    Posté par (site web personnel) . En réponse au journal Contrats et exceptions. Évalué à 2.

    Ben je vois pas pourquoi t'aurais besoin d'un truc particulier pour ca :
    for(int try= 0; try <= maxTry && !openFile(myFile); try ++)

    Evidemment, ca suppose que tes APIs soient bien fait.
    Et c'est d'ailleur une préconisation de design classique dans les bibliothèques : toujours proposer à l'utilisateur un moyen de tester de faire quelque chose sans passer par des exceptions.

    Exemple dans la lib C# :
    Int32.Parse("azerty") => à utiliser quand j'ai pas envie de traiter l'erreur ou que je sais pas quoi faire, lèvera une exception
    si je sais quoi faire :
    if(!Int32.TryParse("azerty", out myInt))
    //je traite le cas particulier qui n'est pas une exception puisque j'ai une règle de traitement pour ce cas.