Я предполагаю, что ваша путаница связана с точечной нотацией, поскольку это часто сбивает с толку новых разработчиков.Это было неудобное и недавнее дополнение к языку.Я также предполагаю, что правки mkb верны, поскольку ваш исходный код был недопустим.
Этот вызов:
[[self.objname objectAtIndex:indexPath.row] objectForKey:@"somename"];
Точно такой же, как этот вызов:
[[[self objname] objectAtIndex:[indexPath row]] objectForKey:@"somename"];
Это грубый, вероятно, эквивалент в языке, подобном C ++, будет следующим:
this.objname.objectAtIndex(indexPath.row).objectForKey("somename");
Это грубая эквивалентность, потому что ObjC и C ++ имеют разные подходы к тому, как называются методы, но в большинстве случаевбыло бы то же самое.
Вас может заинтересовать Обучение какао с другими фонами .Я также настоятельно рекомендую Язык программирования Objective-C в качестве начала или основательную книгу по этому вопросу.Objective-C сильно отличается от Java и C ++, и, по моему опыту, попытка подобрать его по ходу приведет к значительному замешательству и разочарованию позже.Лучше всего изучать язык в его собственных терминах, а не пытаться понять, «как мне сделать эту вещь C ++ в ObjC?»В половине случаев ответ таков: нет.