如何在Objective-C中将字符串传递给函数

6

I made a method like this:

-(void) doSomething:(NSString *)str
{

}

我会将其翻译为:“我这样称呼它”。
doSomething(foo);

它不起作用。


"它不能工作"。您可能需要更具体的描述...... - Mike Abdullah
2个回答

16

在 Objective-C 中调用方法的方式如下:

[class method:parameter];
在您的情况下,要调用doSomething,您需要执行以下操作:
[self doSomething:@"foo"];

1
你必须考虑方法所在的位置。如果你还没有创建任何方法(这种情况下),你使用[self ...]。如果你有一个包含该方法的类,你使用[methodName ...]。点赞! :) - tony gil

7

这是因为doSomething是Objective-C类的一个方法。C语法中对于函数调用的规则在这里不适用,你需要一个实例来调用它,例如:

[instance doSomething:foo];

我强烈建议阅读苹果公司的Objective-C编程语言

请注意保留HTML标记。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接