IOS开发 函数名分析

问下有关函数名的问题:- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath{ }- (void)tableView:(UITableView *)tableView commitEditingStyle:(UITableViewCellEditingStyle)editingStyle forRowAtIndexPath:(NSIndexPath *)indexPath{}这两个函数分别函数名都是什么啊?? 看的挺奇怪的 ,有些都不太明白 比如第一个的函数名是tableView呢还是didSelectRowAtIndexPath??? 如果是后者,那么前面相同的那一段(void)tableView:(UITableView *)tableView这个又是在说明什么的??不懂啊,求解…
2026年09月27日 08:59
有2个网友回答
网友(1):

这是objc的独特语法,其实函数名是这样的:
tableView:didSelectRowAtIndexPaht:
如果改写成c语言语法的话就是这样的:
void
doSomethingWhileTableCellDidSelected(UITableVIew* t, NSIndexPath *i)
{
//make your own code run...

}

第二个函数同理。
再给你举个其他的例子来说明objc的语法,比如有如下一个c语法的函数:
int
getMaxOneFromThoseTwoNumber(int *a,int *b)
{
return a>b?a:b;

}
改写成objc语法后就成了:
- (int)getMaxOneFromNumberA:(int)a andB:(int)b
{
return a>b?a:b;

}

网友(2):

函数名是didSelectRowAtIndexPath,因为是TableView委托中的方法所以才有(void)tableView:(UITableView *)tableView