gpt4 book ai didi

ios - NSURLSession 成员引用类型 struct objc_class 是一个指针

转载 作者:行者123 更新时间:2023-11-28 19:33:55 24 4
gpt4 key购买 nike

我正在尝试实现一个单例来管理 NSURLSession 请求。这是我的代码:

头文件:

@interface httpRequest : NSObject

@property (strong,nonatomic) NSURLSession *session;

+(httpRequest*)request;

执行文件(.m):

+(httpRequest*)request
{
static httpRequest *shareObject = nil;
static dispatch_once_t onceToken;
dispatch_once ( &onceToken, ^{
shareObject = [[self alloc] init];
self.session = [NSURLSession sharedSession];
});
return shareObject;
}

但是在这一行中:

self.session = [NSURLSession sharedSession];

我收到此错误:“NSURLSession 成员引用类型 struct objc_class 是一个指针,您是否打算使用 ->”

enter image description here为什么我会收到错误消息?你们中有人知道解决这个问题的方法吗?

最佳答案

通常的方法是使用init方法

+(httpRequest*)request
{
static httpRequest *shareObject = nil;
static dispatch_once_t onceToken;
dispatch_once ( &onceToken, ^{
shareObject = [[self alloc] init];
});
return shareObject;
}


- (id)init
{
self = [super init];
if (self) {
self.session = [NSURLSession sharedSession];
}
}
return self;
}

但由于 sharedObject 实际上是 self 这也应该有效

+(httpRequest*)request
{
static httpRequest *shareObject = nil;
static dispatch_once_t onceToken;
dispatch_once ( &onceToken, ^{
shareObject = [[self alloc] init];
shareObject.session = [NSURLSession sharedSession];
});
return shareObject;
}

关于ios - NSURLSession 成员引用类型 struct objc_class 是一个指针,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41150381/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com