W UITableView.h, w deklaracji interfejsu dla UITableView znajduje się ivar struct _tableFlags. Członkowie struktury są zdefiniowani jako unsigned int, jednak po tytule każdego członka następuje dwukropek, a następnie liczba.Co oznacza składnia struktury ivar _tableFlags w UITableView.h?
struct {
unsigned int dataSourceNumberOfRowsInSection:1;
unsigned int dataSourceCellForRow:1;
...
unsigned int longPressAutoscrollingActive:1;
unsigned int adjustsRowHeightsForSectionLocation:1;
unsigned int customSectionContentInsetSet:1;
} _tableFlags;
Kakao dąży do wspólnego korzystania z tej składni w plikach nagłówka, ale nie mam pojęcia, co to znaczy i co jest jego funkcja. Co oznacza dwukropek i numer następujący po tytule członka?
w kakao, bitfields są często wykorzystywane do buforowania wartości zwracanych respondsToSelector na delegata. zobacz tutaj: http://macdevelopertips.com/c/bitfields-in-c.html i tutaj: http://stackoverflow.com/questions/626898/how-do-i-create-delegates-in-objective-c gdzie mówi: "Zamiast sprawdzać, czy delegat odpowiada selektorowi za każdym razem, gdy chcemy go wysłać, możesz buforować te informacje, gdy ustawi się delegatów." – magma