使用 BOOL 属性

2023-12-22

Apple 建议以这种方式声明 BOOL 属性:

@property (nonatomic, assign, getter=isWorking) BOOL working;

由于我使用的是 Objective-C 2.0 属性和点表示法,因此我使用以下方法访问此属性self.working。我知道我也可以使用[self isWorking]——但我没必要这么做。

那么,由于我到处都使用点表示法,为什么我应该定义一个额外的属性呢?简单写一下可以吗

@property (nonatomic, assign) BOOL working;

或者说我写作有什么好处吗getter=isWorking就我而言(使用点符号)?

Thanks!


Apple 只是建议声明isX用于风格目的的吸气剂。是否自定义 getter 名称并不重要,只要使用正确名称的点表示法或消息表示法即可。如果您要使用点表示法,那没有什么区别,您仍然可以通过属性名称访问它:

@property (nonatomic, assign) BOOL working;

[self setWorking:YES];         // Or self.working = YES;
BOOL working = [self working]; // Or = self.working;

Or

@property (nonatomic, assign, getter=isWorking) BOOL working;

[self setWorking:YES];           // Or self.working = YES;, same as above
BOOL working = [self isWorking]; // Or = self.working;, also same as above
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用 BOOL 属性 的相关文章

随机推荐

  • 如何知道missModalViewControllerAnimated何时启动以及何时完成?

    有没有办法知道dismissModalViewControllerAnimated何时启动以及何时完成 例如viewWillAppear和viewDidAppear的习惯用法 与其他动画不同 这个动画似乎没有委托来告诉您 是的 而且比你想象
  • Sklearn Chi2 用于特征选择

    我正在学习 chi2 用于特征选择 并遇到了类似的代码this https chrisalbon com machine learning feature selection chi squared for feature selectio
  • 如何让 Mockito 模拟另一个文件中的常量?

    编辑 我正在测试的方法调用在另一个类中定义的这个常量 所以我想测试该方法是否独立于其他类定义常量的方式工作 嘲笑它是我能想到的第一件事 但我对如何以干净 安全的方式测试它的其他想法持开放态度 类 方法和变量名称已泛化 我正在尝试弄清楚如何编
  • 带 wamp 的国际扩展 php_intl.dll

    我想使用Moodle 但在安装过程中出现错误 应该安装并启用 php extension gt intl gt 以获得最佳结果 Intl 扩展用于改进国际化支持 例如区域设置感知排序 当我点击链接时 我收到上面的错误消息 http docs
  • C - 删除递归函数中的重复结果

    我必须创建一个递归函数 告诉您可以将多少美分变成零钱的方法 使用 25 美分 10 分 5 分 5 分 5 分硬币 到目前为止 我有一个递归函数可以做到这一点 但是它多次计算相同的组合 所以数字太大了 如何删除重复的组合 Code incl
  • PHP cURL 如何添加用户代理值或克服服务器阻止 cURL 请求?

    我正在传输一个对象数组 我有一个自己的服务器上的 cURL 客户端 提交者 and 监听别人服务器上的脚本 哪一个不在我的控制之下 然后我认为他们正在阻止传入的 cURL 请求因为当我用普通 HTML 测试时
  • 如何阻止无效用户的 git 提交?

    我正在运行一个gitlab https www gitlab com gitlab ce git 服务器 我的大多数用户都运行 3 个版本中的 1 个版本的 git git 1 7 1 centos 用户 git 1 7 9 其他人 git
  • Firefox 特定 CSS 导致 Visual Studio 中出现多个错误

    在 Visual Studio 2012 中 我尝试在我的外部样式表之一中使用以下 Firefox 特定 CSS moz document url prefix span4 ul li a focus border none span12
  • .Net 和 PHP Rijndael 加密不匹配

    起初我以为这是填充 因为 mcrypt 使用零填充 但我更改了 php 以使用 PKCS7 并得到了相同的精确结果 有人可以帮忙吗 我认为这与php中的填充有关 Net 的测试输出 Key d88f92e4fa27f6d45b49446c7
  • 跟踪图像中的一条线 MATLAB

    我正在编写一个程序来计算示波器输出的一些内容 但随着程序现在的运行 我只需将图像导入 MATLAB 然后使用 ginput 查找生成的曲线上各个区域的坐标 有没有一种方法可以让我拍摄这张图片 并让 ginput 或类似的东西自动沿着亮绿色曲
  • 同步 SQL Server 数据库

    我有一个新的想法和问题想问你 我们有一个本地 内部的 CRM 应用程序 我们使用 24X7 的应用程序类型 我们还在同一个 CRM 数据库 即 OLTP 上进行计费和工资管理 对于 SSRS 报告也进行同样的操作 看起来每当我们在前端进行操
  • 捕获异常 C#

    什么是正确的做法 捕获从最具体到最一般或相反的异常 如果我写 try catch Exception e catch NullReferenceException nre NullReferenceException nre 会被捕获吗 t
  • 接口中的构造函数?

    我知道不可能在接口中定义构造函数 但我想知道为什么 因为我认为它可能非常有用 因此 您可以确定类中的某些字段是为此接口的每个实现定义的 例如 考虑以下消息类 public class MyMessage public MyMessage S
  • Python json,不必要的斜杠

    我正在创建一个简单的服务器端应用程序 我使用内置模块 json 来创建对客户端的答案 if isinstance obj list tuple return json dumps key o to json for o in obj if
  • 将“carbon.super Profile Service”更改为自定义名称

    我能够成功安装 WSO2 EMM 配置文件 它在我的 iOS 设备上运行正常 现在 当我第一次安装配置文件时 它会显示 carbon super Profile Service 作为配置文件标题 如何更改个人资料标题 这被识别为 EMM 中
  • 在 Javascript/下划线上按对象键降序排序

    我有以下对象数组 其中键是 UTC 格式的日期 Array 1436796000000 Task1 Task2 1437400800000 Task4 Task8 1436968800000 Task3 Task2 143688240000
  • Cassandra Hector:如何使用索引列执行 MultigetSliceQuery?

    是否可以在索引列上使用条件 如 IndexedSlicesQuery 时执行 MultigetSliceQuery 换句话说 IndexedSlicesQuery 对一组特定的键执行 我发现执行此操作的方法是首先对一组键执行 Multige
  • Cloudera Impala 连接到 Tableau 错误

    我正在研究使用 Tableau 连接到 Cloudera Hadoop 我提供服务器和端口详细信息并使用 Impala 进行连接 我能够成功连接 选择默认架构并选择所需的表 此后 当我将维度或度量拖放到行 列时grid 我收到以下错误 Cl
  • 如何在 lambda 和 gekko 中使用 If...else

    场景如下 我想最大限度地降低运行电机的成本 我有 X 个电机 每个电机都有一个下限和一个上限 它不能超过上限 也不能低于下限 除非它与 0 一致 当这些电机必须达到 Y 的功率时 我必须找到一种方法来最小化这些电机的成本 并非每个电机都必须
  • 使用 BOOL 属性

    Apple 建议以这种方式声明 BOOL 属性 property nonatomic assign getter isWorking BOOL working 由于我使用的是 Objective C 2 0 属性和点表示法 因此我使用以下方