objc-c 嵌入C

inline static void* SteMakeWeakRef(id obj) {
    
    __weak id weakValue = obj;
    void* blockPoint = (__bridge_retained void*)^{return weakValue;};
    return blockPoint;

}

/** 测试代码 **/
   id(^block)(void);
    NSString* value = @"oldStr";
    block = (__bridge_transfer id)(SteMakeWeakRef(value));
    value = @"newStr";
    NSLog(@"%@",block());
    //执行结果:oldStr

把上面的__weak 去掉结果也是相同的.
想问下有没有其他方法测试 被block包起来的 weakValue是否是弱引用?

阅读 1.3k
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进