ios - 这种类型转换是否分配地址或数据?

标签 ios objective-c pointers

cell的类型为UITableViewCell*

LocationCell *locationCell = (LocationCell *)cell;

这是否将cell的地址分配给locationCell并保留对象的相同实例?等于LocationCell *locationCell = &cell吗?

最佳答案

如果cell已经是LocationCell *类型的变量,则不需要强制转换。如果cell是另一种类型(例如UITableViewCell *),则强制转换只做一件事-它告诉编译器您更了解。您知道对象实际上就是该类型,而不是变量声明所指示的类型。

该值不会以任何方式更改。用您的话来说,是的,它保留了对象的相同实例。它根本不像您的最后一句话。

关于ios - 这种类型转换是否分配地址或数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16662924/

相关文章:

c++ - 内置数组类型的开始和结束函数

c - 将输入获取到动态分配的内存中,然后返回指针

ios - 导航到选项卡栏 Controller 的正确方法

ios - 正在重置 UIView 转换属性

ios - UITextview 显示文本阿拉伯语但数字英语

Objective-C:为什么在 respondsToSelector: 之前检查 nil?

ios - 我如何检查我的 View Controller 现在是否显示?

c - 尝试释放 char* 类型的结构字段时出现 "free(): invalid pointer"错误

ios - 更改 iPhone UISlider 条形图

mysql - 如何将数组插入sqlitedatabase列以及如何在Uitableview单元格中显示