Когда нам нужен указатель на переменную BOOL в Objective C?

В каком случае нам нужен указатель на переменную BOOL на языке Objective C?

У меня есть код для сворачиваемого UITableView, в котором есть объявление функции:

- (void)toggle:(BOOL*)isExpanded section:(NSInteger)section; 

и его определение:

- (void)toggle:(BOOL*)isExpanded section:(NSInteger)section 
{
    *isExpanded = !*isExpanded; 
    NSArray *paths = [self indexPathsInSection:section];

    if (!*isExpanded)
    {
        [self.tableview deleteRowsAtIndexPaths:paths withRowAnimation:UITableViewRowAnimationFade];
    }
    else 
    {
        [self.tableview insertRowsAtIndexPaths:paths withRowAnimation:UITableViewRowAnimationFade];
    }

* isExpanded =! * IsExpanded; Каково значение этого оператора, поскольку я никогда не видел использовал этот вид оператора в случае переменной BOOL.

Ниже приведены две другие функции того же кода, которые вызываются в последовательности, указанной выше:

- (NSArray*)indexPathsInSection:(NSInteger)section 
{
    NSMutableArray *paths = [NSMutableArray array];
NSInteger row;
    for ( row = 0; row < [self numberOfRowsInSection:section]; row++ ) 
    {
        [paths addObject:[NSIndexPath indexPathForRow:row inSection:section]];
    }
    return [NSArray arrayWithArray:paths];
}

- (NSInteger)numberOfRowsInSection:(NSInteger)section 
{
    return [[sectionDataArray objectAtIndex:section] count];
}

sectionDataArray - это массив для количества строк в каждом разделе. Я могу быть неясным, но если вы поняли мою точку зрения, пожалуйста, объясните все это.

Вот ссылка на этот код

Спасибо

5
задан Developer 1 July 2011 в 09:55
поделиться