查询__has_feature(objc_arc)的动机是什么
What is the motivation for querying __has_feature(objc_arc)
我正在查看一些我需要维护的遗留代码,我看到很多地方有以下查询:
#if __has_feature(objc_arc)
// ARC is On
// ...
#else
// ARC is Off
// ...
#endif
保留 'ARC is Off' 代码的动机是什么?
没有什么动机将非 ARC 代码保留在 .m 文件中,因为您可以选择始终编译启用 ARC 的代码。
在 .h 文件中,如果头文件可能由仍然使用手动引用计数的 .m 文件导入并且该 .m 文件的维护者不希望导入,则需要保留无 ARC 代码将 .m 文件转换为 ARC。
我正在查看一些我需要维护的遗留代码,我看到很多地方有以下查询:
#if __has_feature(objc_arc)
// ARC is On
// ...
#else
// ARC is Off
// ...
#endif
保留 'ARC is Off' 代码的动机是什么?
没有什么动机将非 ARC 代码保留在 .m 文件中,因为您可以选择始终编译启用 ARC 的代码。
在 .h 文件中,如果头文件可能由仍然使用手动引用计数的 .m 文件导入并且该 .m 文件的维护者不希望导入,则需要保留无 ARC 代码将 .m 文件转换为 ARC。