【发布时间】:2013-04-09 17:44:10
【问题描述】:
我有一个继承自 NSObject 的 WebServices 类。我正在使用 xcode4.2 并打开了 ARC。 当我创建类时,NSObject 中没有其他方法位于 viewDidLoad 或 init。
问题是当我尝试调用 self.something 或 [self someMethod] Xcode 将我的代码标记为红色并抱怨:
Objective-C 指针类型“Class”到 C 指针类型“struct obj_class*”的隐式转换需要桥接转换
请帮忙。为什么 cocoa 不像 java 那样你调用“this”并获取你所在的对象?
// WebService.h file
@interface WebService : NSObject
@property (weak, nonatomic) NSString * myString;
+(void) setAndPrintMyString:(NSString*) someString;
@end
//WebService.m file
#import "WebService.h"
@implementation WebService
@synthesize myString=_myString;
+(void) printMyString:(NSString*) someString{
[self setMyString:someString]; //XCode does not allow
NSLog(@"myString is set to %@",self.myString); //XCode dose not allow
}
@end
【问题讨论】:
-
你能显示你正在尝试的代码吗
-
@Paul.s 我在工作中添加了一些代码,如果代码有错别字,我深表歉意,我在发布之前没有运行它。
-
您发布的代码对我来说很好 - 您需要发布实际代码以便我们可以看到真正的问题,或者 Xcode 正在发挥作用
-
@Paul.s 更新了我的代码......我有一个 +(void) 而不是 -(void) 我现在觉得这对我有意义。
标签: cocoa-touch ios6 xcode4.2 implicit-conversion nsobject