Outils pour utilisateurs

Outils du site


objc:programmation_par_blocs

Programmation iOS par bloc

La programmation de blocs iOS est comparable aux fonctions anonymes telles qu'on les trouve en Javascript, ou encore aux lambdas en Python. À ce sujet, si vous programmez en Python, un excellent article à lire indispensablement (oui, Môssieur, ce mot est laid mais français).

Déclaration

La déclaration n'est pas obligatoire. Le bloc peut être écrit inline et ne nécessite dans ce cas aucune déclaration préalable.

// Un peu de code d'exemple

Si la fonction doit être déclarée, la syntaxe est relativement simple. L'utilisation du symbole ^ permet de matérialiser un bloc. Le code suivant déclare un bloc nommé “unBlock”, qui prend en paramètre un int*, un int et un flot et renvoie un NSString.

NSString (^unBlock)(const int*, int, float);

Implémentation

Avec déclaration

  • L'opérateur ^ est utilisé pour déclarer une variable de type bloc et pour introduire le code correspondant.
int (^multiplieParTrois)(int) = ^(int num) 
{
    return num * 3;
};
 
==== Sans déclaration ====
Le cas le plus fréquent.
printf("%d", multiplieParTrois(3)); // Affichera "9"
objc/programmation_par_blocs.txt · Dernière modification: 2016/10/17 13:56 (modification externe)