• typedef和Block


    1.函数指针回顾

    • 函数指针使用
    int sum(int value1, int value2)
    {
        return value1 + value2;
    }
    
    int minus(int value1, int value2)
    {
        return value1 - value2;
    }
    
    int main(int argc, const char * argv[]) {
        int (*sumP) (int, int) = sum;
        int res = sumP(10, 20);
        NSLog(@"res = %i", res);
    
        int (*minusP) (int , int) = minus;
        res = minusP(10, 20);
        NSLog(@"res = %i", res);
        return 0;
    }
    • 函数指针别名
    typedef int (*calculate) (int, int);
    int main(int argc, const char * argv[]) {
        calculate sumP = sum;
        int res = sumP(10, 20);
        NSLog(@"res = %i", res);
        calculate minusP = minus;
        res = minusP(10, 20);
        NSLog(@"res = %i", res);
        return 0;
    }

    2.block和typedef

    • block使用

    int main(int argc, const char * argv[]) {
      int (^sumBlock) (int, int) = ^(int value1, int value2){
          return value1 + value2;
      };
      int res = sumBlock(10 , 20);
      NSLog(@"res = %i", res);
    
      int (^minusBlock) (int, int) = ^(int value1, int value2){
          return value1 - value2;
      };
      res = minusBlock(10 , 20);
      NSLog(@"res = %i", res);
      return 0;
    }
    • block别名

    int main(int argc, const char * argv[]) {
        calculateBlock sumBlock = ^(int value1, int value2){
            return value1 + value2;
        };
        int res = sumBlock(10, 20);
        NSLog(@"res = %i", res);
        calculateBlock minusBlock = ^(int value1, int value2){
            return value1 - value2;
        };
        res = minusBlock(10, 20);
        NSLog(@"res = %i", res);
    
        return 0;
    }
  • 相关阅读:
    CSS 文本
    javascript:void(0)的问题
    剑指offer
    牛课--C/C++
    Linux学习--第二波
    面经-csdn
    初学Linux
    二分查找法的实现和应用汇总
    vs2013下git的使用
    win10+vs2013+Qt5.4 安装方法
  • 原文地址:https://www.cnblogs.com/xufengyuan/p/6602491.html
Copyright © 2020-2023  润新知