Chi*_*ong -2 iphone methods class-design class instance
我在ClassName.m中编写了一个实例方法:
-(void)methodName:(paraType)parameter
{...}Run Code Online (Sandbox Code Playgroud)
并使用它来调用它
[self methodName:parameter]; Run Code Online (Sandbox Code Playgroud)将弹出警告,但代码仍然成功运行.
这是因为我还没有创建类的实例吗?为什么方法仍能正常运行?调用自我方法来阻止警告的正确方法是什么?
那么接收警告的第一步就是发布警告:)
我假设这是一个无法识别的消息?如果是这样的话,因为虽然编译器看到对"methodName"的调用,但它不知道它是否对该对象有效.
我猜你的代码看起来像;
-(void) someFunc
{
...
[self methodName:parameter];
...
}
-(void)methodName:(paraType)parameter
{
...
}
Run Code Online (Sandbox Code Playgroud)
你可以;
a)将'methodName'函数放在文件的前面,以便编译器在调用之前看到它.
b)在类接口中声明它.例如
// Foo.h
@interface Foo {
...
}
-(void) methodName:(paraType)parameter;
@end
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1825 次 |
| 最近记录: |