【绘图案例-Quartz2D的内存管理 Objective-C语言】

本文介绍了在Objective-C中使用Quartz2D绘图时可能出现的内存管理问题,并通过Xcode的Analyze工具进行静态代码分析。讲解了如何识别和解决由于未正确释放CGPath对象导致的内存泄漏问题,以及两种释放CGPath对象的方法:CGPathRelease和CFRelease。同时强调了在开发过程中利用Analyze工具在上架前检查代码的重要性,它可以发现内存泄漏和其他潜在问题。
摘要由CSDN通过智能技术生成

一、接下来,我们来说这个内存管理

通知

1.我们之前,说我们用那种,可变路径,去画图的时候,会有问题,说可能有内存问题,

把我们之前的copy代码,复制粘贴一份儿,

通知

名字改成“03-quartz2d内存管理“,

通知

我们打开这个“03-quartz2d内存管理”的代码,把昨天的那个代码复制粘贴过来,我们找一个这种有问题的就行了啊,

通知

选中这一堆,command + C、然后,把它粘贴过来,

通知

command + R,

通知

好,这个里边儿,我们画了一条线啊,

我们之前的这种方式,再来过一下,

1)首先呢,我们获取了当前的上下文,CGContextRef ctx = UIGraphicsGetCurrentContext();

2)然后呢,去创建了一个可变的路径,CGMutablePath path = CGPathCreateMutable();

3)在这个路径对象上边,还画了一个(50,50),(100,200),画了一个这个路径,CGPathMoveToPoint(path,NULL,50,50);

CGPathAddLineToPoint(path,NULL,100,200);

4)接下来,把这个路径,添加到上下文当中,CGContextAddPath(ctx,path);

5)最后,根据这个上下文,去渲染,CGContextStrokePath(ctx);

2.好,然后呢,接下来,我们说,它可能会有问题,这个问题我们应该怎么着去看,怎么着去查看它,我们并不能说,虽然之前跟大家画图说了,但是我们平时写代码,不可能一步一步去分析,那是不可能的啊,然后,这个里边儿呢,我们介绍xcode的一个功能,

二、在xcode里边儿,这个Product,

通知

1.这个Product里边儿,有一个叫做Analyze的东西,

通知

Analyze:是分析,然后我们说,这个编译,是command + B,啊,这个Analyze,分析,是command + shift + B,

好,我现在点一下这个选项,

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

清风清晨

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值