240 发简信
IP属地:甘肃
  • @一缕殇流化隐半边冰霜 [<NSObject: 0x100b001b0> , 0x7fff5fbff7e8] 你这里后面打印的0x7fff5fbff7e8不是指针的地址么?前面打印的0x100b001b0对象地址说明指针指向相同,后面指针地址相同说明是同一个指针呀。。。。

    深入研究Block捕获外部变量和__block实现原理

    前言 Blocks是C语言的扩充功能,而Apple 在OS X Snow Leopard 和 iOS 4中引入了这个新功能“Blocks”。从那开始,Block就出现在iOS...

  • hello,霜神,说一个问题,根据你在mrc下做的实验结果
    block_obj = [<NSObject: 0x100b001b0> , 0x7fff5fbff7e8] , obj = [<NSObject: 0x100b001c0> , 0x7fff5fbff7b8]
    Block****中********block_obj = [<NSObject: 0x100b001b0> , 0x7fff5fbff7e8] , obj = [<NSObject: 0x100b001c0> , 0x7fff5fbff790]

    这里的block_obj在block中和block外的指针地址都是一样的,说明是同一个指针吧?这不能得到
    “在MRC环境下,__block根本不会对指针所指向的对象执行copy操作,而只是把指针进行的复制。”这个结论呀

    深入研究Block捕获外部变量和__block实现原理

    前言 Blocks是C语言的扩充功能,而Apple 在OS X Snow Leopard 和 iOS 4中引入了这个新功能“Blocks”。从那开始,Block就出现在iOS...