NSString 发布

2024-01-12

我有这段字符串代码,在尝试释放内存时遇到问题,我知道只有那些释放它的人才会初始化,而不是自动释放,但我在字符串“end”和 nSum 释放方面遇到了问题。

NSString *urlBase = [[NSString alloc] initWithFormat:@"http://service.svc/"];
NSString *op = [[NSString alloc] initWithFormat:@"op1"];
NSString * final = [urlBase stringByAppendingFormat:op];
NSString * nSum = sumTextfield.text;
final = [final stringByAppendingFormat:nSum];

//release

[ urlBase release ];
[ op release ];
//[final release]; error
//[final autorelease]; error

谢谢你的帮助。

UPDATE:

- (IBAction)mostrarOpciones {
 // code (UP)
}

如果您使用以 init、new、copy 或 mutableCopy 开头的方法创建对象,那么您拥有该对象并负责在使用完该对象后释放它(或自动释放它)。如果您使用任何其他方法创建对象,该对象会自动释放,并且您不需要释放它。在这种情况下,如果您想保留该对象,实际上需要保留该对象。苹果有一个内存管理编程指南 http://developer.apple.com/library/mac/#documentation/Cocoa/Conceptual/MemoryMgmt/Articles/mmRules.html包括所有这些规则。

您发布的代码实际上是正确的。你需要释放urlBase and op因为您使用以 init (initWithFormat:在这种情况下)。final and nSum已经为您自动发布了。 Final 是由不以 init、new、copy 或 mutableCopy 开头的方法创建的(在本例中为工厂方法stringByAppendingFormat:)。 nSum 由名为的方法返回text,并且您可以假设 sumTextField “拥有”它或在将其返回给您之前已自动释放它,因此您不负责释放它。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

NSString 发布 的相关文章

随机推荐

  • 如何在matlab中检测平滑曲线

    我正在尝试检测图像中的弯曲传送带 我使用以下代码使用霍夫变换来检测其边缘 load image and process it I imread ggp 2 jpg g rgb2gray I bw edge g Canny H T R hou
  • 在C#中,“this”关键字是必需的吗? [复制]

    这个问题在这里已经有答案了 在下面的构造函数中 this 关键字是必需的吗 我知道我可以删除它 它符合规定 一切都很好 如果我省略 this 这会给我带来麻烦吗 省略 这个 是否被认为是不好的做法 Constructor public Em
  • 读取 tiff 文件的尺寸和分辨率而不先加载它

    如何使用如下代码读取 tiff 文件的尺寸 宽度和高度 和分辨率 水平和垂直 而无需先将其加载到内存中 对于大文件来说太慢了 而且我不需要操作它们 Image tif Image FromFile C large size tif floa
  • 通过 Spring 3 JavaMail 创建 MIME 格式 Freemarker 模板的多部分消息

    如何创建包含相同内容的文本和 HTML 版本的电子邮件 当然 我想知道如何设置 freemarker 模板或将发送的消息的标头 当我查看收件箱中每次收到的 MIME 格式的多部分消息的来源时 其中的内容如下 This is a multi
  • python 帮助 >> 模块出现分段错误 - 如何修复?

    欢迎使用 Python 2 7 这是在线帮助实用程序 gt gt help help gt modules Please wait a moment while I gather a list of all available module
  • 为什么我的 Model 对象在 dotnet core 2.x Razor Page 应用程序中的 Razor Page 上始终为 null?

    我正在创建一个部分视图作为 Index cshtml 的一部分 我遵循 Microsoft 文章中概述的基础知识 gt https learn microsoft com en us aspnet core mvc views partia
  • Swift 协议实现另一个 @objc 协议

    使用 Swift 4 我尝试编写一个自定义协议 该协议提供与 objc 协议的一致性 一些代码 更具体地说 我有一个自定义协议Searchable它提供了 UIKit 协议的简单实现UISearchBarDelegate 只需要实现一个回调
  • RequireJS - 当给定某些别名时 jQuery 未定义

    设置 jQuery 的路径时 每当我使用时 require config paths jQuery libs jquery 1 8 0 min Then define jQuery function console log 将是未定义的 但
  • 正则表达式 匹配任何字符串 powershell

    无论我觉得自己对正则表达式了解得有多好 它们似乎总是打败我 我正在寻找一种可以匹配任何字符串的通用模式 我能弄清楚如何处理所有这些不同的命名约定的唯一方法是制作一堆不同的正则表达式模式 现在我什至不确定是否所有数据都被拾取 所以我必须手动交
  • Visual Studio 2010 发布 Web 功能不包括所有 DLL

    我有一个 ASP NET MVC 2 应用程序 Web 项目包含对 SomeProject 的引用 SomeProject 包含对ExternalAssembly1 和ExternalAssembly2 的引用 SomeProject 显式
  • 从日期/时间字符串中删除时间

    我的数据库中存储了日期和时间 但我不想显示两者 只显示日期本身 当我将日期 时间存储在变量中时 如何在 C 中仅输出日期 这非常有用 http www csharp examples net string format datetime h
  • 存在隐藏输入类型时不返回 POST 数据

    我认为我的代码中有错误 或者我的 PHP 或 Apache 设置不正确 当我提交包含隐藏字段的表单时 我的 POST 数组中没有收到任何数据 当我注释掉代码中的隐藏字段时 POST 数据会正确返回 HTML表格
  • 动态表创建实体框架

    我想知道是否有任何方法可以使用实体框架在运行时创建动态表 我知道我将在编译时创建的表的架构 因为我使用实体框架的模型优先方法 例如 我知道将在运行时创建的新表将具有如下所示的特定格式 Person Id bigint Name nvarch
  • Scaffold-DbContext 不生成虚拟导航属性(EF Core 2.1)

    我使用的是 EF Core 2 1 数据库优先 I use Scaffold DbContext创建 更新我的模型 cs 文件 我想启用延迟加载 https learn microsoft com en us ef core queryin
  • 这很可能会在 Tomcat 中造成内存泄漏吗?

    我将 tomcat 配置为与不同的外部开源一起使用 然而 在 tomcat 运行几分钟后 我得到 严重 Web 应用程序 MyProject 创建了一个 ThreadLocal java lang ThreadLocal 类型的键 值 ja
  • TFS 构建 2013 - 使用 Visual Studio 2015

    使用 Visual Studio 2015 签入文件时 在 TFS 2013 上构建工作时遇到了一些问题 我正在处理的解决方案 项目是在 VS 2015 NET 4 6 上创建的 我似乎在 TFS 2013 上构建它时遇到了麻烦 我首先收到
  • Signin-oidc 页面直接访问错误与关联 - 如何重定向?

    通过设置 asp net coreAddOpenIdConnect它默认创建 signin oidc从 openind 提供商访问时工作正常的页面 用户已登录 一切正常 尽管用户仍然可以尝试访问mypage com signin oidc直
  • 如何将快速过滤器与服务器端/无限行模型一起使用?

    As per 文档 快速过滤器 https www ag grid com javascript grid filter quick server side data 快速过滤器与clientSide行模型 我们正在使用serverSide
  • 如何检查当前线程的单元状态?

    我有一个函数需要在 STA 公寓状态下运行 我想检查它是否作为 STA 运行 如果没有生成一个在 STA 中运行的新线程 如何检查当前线程正在哪个单元状态运行 System Threading Thread CurrentThread Ge
  • NSString 发布

    我有这段字符串代码 在尝试释放内存时遇到问题 我知道只有那些释放它的人才会初始化 而不是自动释放 但我在字符串 end 和 nSum 释放方面遇到了问题 NSString urlBase NSString alloc initWithFor