具有多个参数的Objective-C方法调用
我知道下面列出的方法包含两个参数,card和atTop。为什么阿托普要重复两次?我知道addCard是函数名,这个函数返回一个void,其中card是card*类型的变量,我知道atTop是BOOL类型的,但是为什么atTop是两次呢具有多个参数的Objective-C方法调用,objective-c,Objective C,我知道下面列出的方法包含两个参数,card和atTop。为什么阿托普要重复两次?我知道addCard是函数名,这个函数返回一个void,其中card是card*类型的变量,我知道atTop是BOOL类型的,但是为什么atTop是两次呢 - (void)addCard: (Card *)card atTop:(BOOL)atTop; 这是因为该方法的全名为 - addCard:atTop: 因此,第一个atTop是函数名的一部分,第二个atTop是参数名(这两个参数在本例中是相等的,仅凭偶然性
- (void)addCard: (Card *)card atTop:(BOOL)atTop;
这是因为该方法的全名为
- addCard:atTop:
因此,第一个
atTop
是函数名的一部分,第二个atTop
是参数名(这两个参数在本例中是相等的,仅凭偶然性,它们可以不同)这是客观的c表示法
(void)addCard: (Card *)card atTop:(BOOL)atTop;
方法名称(选择器)-“addCard:atTop:”
参数1类型-“卡*”名称-“卡”
参数2类型-“BOOL”名称“atTop”
返回值-Obj中的“void”。C、 所有附加参数必须与名称和变量关联?例如,void(addCard):(Card*)Card atTop:(BOOL)atTop numCards:(int)numCards?我习惯C++,在这里我们只有一个函数名并输入所需的许多变量。我只是想sure@baskInEminence它们不一定是相同的,不。@baskInEminence您所说的(“参数必须与名称和变量相关联”)令人困惑,参数在变量中“具体化”,变量有一个名称来引用它。您甚至可以有一个名为“-addCard:::”(不带“中间子名称”)的函数。它是一个方法,而不是一个函数(存在差异)。最后一个
atTop
是该值的引用名称。例如,它可能是-(void)addCard:(Card*)Card atTop:(BOOL)myBool在函数中,您可以使用myBool
访问它。