gpt4 book ai didi

ios - 我们可以在类别中设置只读属性吗?

转载 作者:行者123 更新时间:2023-11-29 02:53:09 25 4
gpt4 key购买 nike

我有以下代码:

Student.h
@property(strong, nonatomic, readOnly) NSString *name;

Student.m
@property(strong, nonatomic, readWrite) NSString *name;

如果我尝试在类别中设置名称(例如 Student+Details.h)会怎样?例如 self.name = @"Rohit";

如果在其他类(class)尝试怎么办,例如

StudentDetailsVC.m
Student *student = [[Student alloc] init];
student.name = @"Rohit";

忽略语法错误。我在这里手动输入以解释情况。

最佳答案

你会得到一个编译错误,如果你设法说服编译器忽略那个错误(通过使用 #pragma 或编译器选项),那么你会得到一个运行时错误(未知选择器),因为 setter 方法不存在。

但是,如果您知道支持该属性的实例变量,则可以直接设置它。

它可能叫做 _name:

_name = @"Andy";

关于ios - 我们可以在类别中设置只读属性吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24244842/

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