2014-08-29 2 views
0

Я пытаюсь вызвать блок, который возвращает мне случайный finalItemID (int) в соответствии с состоянием приложения. Но приложение не может строить из-за ошибки:Назначение 'int' из несовместимого типа 'int (^ __ strong) (void)'

Assigning to 'int' from incompatible type 'int (^__strong)(void)'

Мой код:

//block declaration 
int(^getMeAnItem)(void)=^int(void) 
{ 
int finalItemID=0; 
//some randomization code 
return finalItemID; 
}; 

int itemIDToBeChecked=0; 
itemIDToBeChecked= getMeAnItem; //red error appears on this line 

я не вижу ничего плохого происходит здесь. Надеюсь, вы, ребята, можете помочь. Благодарю.

ответ

4

Для вызова блока вам нужно на самом деле назвать это:

itemIDToBeChecked = getMeAnItem(); 
+0

Это был большой мигающий момент. Вероятно, я должен был заплакать за угол за эту ошибку. Благодарю. –

0

насчет скобки?

itemIDToBeChecked = getMeAnItem(); 
+0

Спасибо, что сработал. –

1

Вы инициализируете переменную с именем getMeAnItem. Инициализация всегда заканчивается точкой с запятой. Твой нет.

Смежные вопросы