zl程序教程

您现在的位置是:首页 >  数据库

当前栏目

使用NSHashTable存储引用对象

存储对象 引用 使用
2023-09-14 08:57:58 时间

NSHashTable

      我们使用集合(NSArray,NSMutableArray,NSDictionary,NSMutableDictionary,NSSet,NSMutableSet)存储对象时会对其强引用(你可以使用单例的集合存储数据试一下咯),有时候我们不想这样子,怎么办呢?

 

      那就使用NSHashTable这个集合吧,它的使用方法与NSSet完全相似,不同的是,它的一种初始化方式是weakObjectsHashTable,专门用来存储弱引用对象,不会持有它,那个对象的所有人消失了,这个对象也会从这个集合中消失,多么人性化!

 

      下面介绍它的一些方法:

 

- (BOOL)containsObject:(id)anObject

Returns a Boolean value that indicates whether the hash table contains a given object.

返回一个bool值,用来指示这个hash表中是否包括了你给与的对象.

 

- (void)addObject:(id)object

Adds a given object to the hash table.

将一个对象添加进hash表中.

 

- (void)removeObject:(id)object

Removes a given object from the hash table.

从hash表中移除你给定的对象.

 

+ (id)weakObjectsHashTable

Returns a new hash table for storing weak references to its contents.

返回一个hash表用来存储弱引用对象.


<c++> &引用概念 | 引用用法 | 引用与指针区别 什么是引用?引用是已定义的变量的别名(另一个名称)。通俗来讲,就相当于起一个外号。引用语法是什么样的?语法:数据类型& 引用名 = 引用实体;举个例子:如果我们要将a作为bint a;&不是地址运算符,而是类型标识符。它是放在数据类型后面的。
玩转JVM中的对象及引用:从创建到引用到分配和优化策略 类加载检查 当Java虚拟机遇到一条new指令的时候,它会先去运行时常量池中寻找new的类的符号引用,并且检查这个符号引用所代表的类是否已经被加载、解析、初始化过。如果没有即需要进行相应的类加载过程。
方法引用的那些事儿 一句话介绍: **方法引用**(**_Method Reference_**)是在 Lambda 表达式的基础上引申出来的一个功能。 先不铺展概念,从一个示例开始说起。 # 一、小示例 ```java List list = Arrays.asList(1, 2, 3); list.forEach(num - System.out.println(num));
class Table{Name * p;size_t sz;publish:Table(size_t s = 15){p = new Name[sz=s];}~Table(){delete[]p ;}.