据我所知,导入包装类所代表的Objective-C对象没有ARC。处理Objective-C对象时,您必须在正确的位置调用retain并释放自己。
分配一个新的Objective-C对象会将其引用计数初始化为1,并且调用release会将其降为0,从而将其销毁。
所以问题是,我们是否需要为我们创建的每个对象调用release?如何使用delphi下的ios objective-c对象进行引用计数?
我也听说他们是不同类型的场景,例如,如果你用Create
创建这样一个类,alloc
它的自然调用的接缝和其他函数如{{1}它的缝合保留没有被调用...所以现在我知道何时发布以及何时保留
我遇到的典型情况是:
fileUrlWithPath
下面的这条指令创建一个GraphRequest,它将调用异步(因此它立即返回)http请求并稍后调用(完成后)函数GraphRequestCompletionHandler
这个问题我需要像
那样写 var aGraphRequest: FBSDKGraphRequest;
aGraphRequest := TFBSDKGraphRequest.Wrap(TFBSDKGraphRequest.Alloc.initWithGraphPath(StrToNSStr(aGraphPath));
aGraphRequest.startWithCompletionHandler(GraphRequestCompletionHandler);
相反?
取自delphi的其他例子:
aGraphRequest := TFBSDKGraphRequest.Wrap(TFBSDKGraphRequest.Alloc.initWithGraphPath(StrToNSStr(aGraphPath));
aGraphRequest.startWithCompletionHandler(GraphRequestCompletionHandler);
aGraphRequest.release
我觉得这个样本中的内存泄漏没有?错过了LString的发布