我正在启动一个新的iOS Swift
项目。我需要添加一些所有项目类都应该继承的功能。与Objective C
不同,并非Swift
中的所有类都继承自任何特定的类,即NSObject
。例如,
我无法创建Any
或AnyObject
类的扩展,就像我可以为NSObject
创建扩展一样。例如,下面的代码可以。
extension NSObject {
@objc var classTag: String {
return String(describing: type(of: self))
}
}
但是,AnyObject
上的扩展名会导致编译器错误,
非标称类型“ AnyObject”不能扩展
因此,我决定将项目中的所有swift类都继承自Baseclass
,而我的NSObject
实际上是从class Baseclass: NSObject {
@objc var classTag: String {
return String(describing: type(of: self))
}
}
继承的。
class OtherClass: Baseclass {
// have classTag
}
和其他类别,即
Baseclass
在我为团队制定政策以从NSObject
继承所有类之前,我想知道默认情况下从Breakpoint 1,other_MAIT_create (max_deno=10,MAIT_node=0x7fffffffdad0,nume=9,deno=1024,output_site=0x7fffffffdb10,parent=0x7fffffffdaf0,MAIT_sign=3,save_num=0x7fffffffdab4) at create.cpp:33
33 clean_sign(MAIT_node);
(gdb) n
35 for(unsigned int i=max_deno-1;i>-1;i--)
(gdb) n
8 two_d_node node_split;
(gdb) n
7 node split_single;
(gdb) n
6 infor split_temp;
(gdb) n
93 }
(gdb) n
main (argc=1,argv=0x7fffffffdc98) at main.cpp:32
32 for(unsigned int i=2;i<number;i++)
继承所有类是否存在一些缺点。