IOS面试题object-c 101-110

时间:2024-03-15 17:20:19
101. typeof 和 __typeof,typeof 的区别?
__typeof __() 和 __typeof() 是 C语言 的编译器特定扩展,因为标准 C 不包含这样的运算符。 标准 C 要求编译器用双下划线前缀语言扩展(这也是为什么你不应该为自己的函数,变量等做这些)

typeof() 与前两者完全相同的,只不过去掉了下划线,同时现代的编译器也可以理解。

所以这三个意思是相同的,但没有一个是标准C,不同的编译器会按需选择符合标准的写法。
????????????????????????
102. Object-C 单例设计模式会有什么弊端?
主要优点:

1、提供了对唯一实例的受控访问。
2、由于在系统内存中只存在一个对象,因此可以节约系统资源,对于一些需要频繁创建和销毁的对象单例模式无疑可以提高系统的性能。
3、允许可变数目的实例。

主要缺点:

1、由于单利模式中没有抽象层,因此单例类的扩展有很大的困难。
2、单例类的职责过重,在一定程度上违背了“单一职责原则”。
3、滥用单例将带来一些负面问题,如为了节省资源将数据库连接池对象设计为的单例类,可能会导致共享连接池对象的程序过多而出现