Bonjour,
Je suis en train de développer une application sous grand central dispatch et j'ai un soucis dans la gestion des variables locales de blocks:
Je cherche à créer des variables locales dans un block. Les variables locales sont de type int ou object (c++), types déclarés avant le bloc.
Lorsque les variables sont déclarées dans le bloc, le compilateur retourne l'erreur suivante:
"error: 'int genome_population::month' is not a static member of 'class genome_population'"
Pourquoi xcode n'accepte pas la création de variable dans le block ?
Si l'un d'entre vous sait comment regler le soucis, merci pour votre aide !
Voici pour info un bout du code:
La fonction dans laquelle le parallelisme est utilisé est membre de la classe "Genome Population", classe définie avant dans le programme.
etc...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22 int genome_population::compute_all_fitnesses (security_universe *market, int month_1, int month_2) { int month, n; dispatch_queue_t queue; if ((month_1 <0)||(month_2 > experiment_configuration->number_months_history)||(month_2 < month_1)) { printf("genome_population::compute_all_fitnesses error: month_1 %i or month_2 %i out of range\n", month_1, month_2); return (-1); } maximum_fitness = -1/ALMOST_ZERO; queue = dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0); dispatch_apply(size_of_population, queue, ^(size_t n) { int month;
Partager