OC方法重载

作者: 大刘 | 来源:发表于2022-06-12 16:19 被阅读0次

    Created by 大刘 liuxing8807@126.com

    Java/c++/c#/swift全部支持方法重载, 但OC不支持重载,可以利用编译器使用C方法重载

    //
    //  ViewController.m
    //  C_overload
    //
    //  Created by liuweizhen on 2018/12/14.
    //  Copyright © 2018 daliu. All rights reserved.
    //
    
    #import "ViewController.h"
    
    __attribute__((overloadable)) double sum(double a, double b) {
        return a + b;
    }
    
    __attribute__((overloadable)) int sum(int a, int b) {
        return a + b;
    }
    
    __attribute__((overloadable)) int sum(UIView *a, UIView *b) {
        return 100;
    }
    
    @interface ViewController ()
    
    @end
    
    @implementation ViewController
    
    - (void)viewDidLoad {
        [super viewDidLoad];
        
        NSLog(@"%d", sum(self.view, self.view));
    }
    
    @end
    

    相关文章

      网友评论

        本文标题:OC方法重载

        本文链接:https://www.haomeiwen.com/subject/aqngmrtx.html