【发布时间】:2011-01-27 10:46:17
【问题描述】:
我注意到很多Objective-C 示例会使用@class 转发声明类,然后通过import 将类实际导入到.m 文件中。我知道这被认为是一种最佳做法,如问题答案中所述:@class vs. #import
来自 C++,这感觉倒退了。我通常会在新的类头文件中包含所有需要的 .h 文件。这似乎很有用,因为它会使编译器在两个类相互包含时生成警告,此时我可以确定这是否是一件坏事,然后使用相同的 Objective-C 样式并在标题中前向声明该类,然后将其包含在 .cpp 文件中。
在实现文件中前向声明@class并导入有什么好处? 转发声明类而不是包含头文件是否应该是 C++ 中的最佳实践? 或者一开始就以这些相似的术语来考虑 Objective-C 和 C++ 是错误的吗?
【问题讨论】:
标签: c++ objective-c