美文网首页
iOS 运行时的一些方法

iOS 运行时的一些方法

作者: yuezishenyou | 来源:发表于2018-11-16 10:22 被阅读0次

    注意: 引用头文件
    /#improt <objc/runtime.h>
    /#improt<objc/message.h>

    objc_msgSend

      // 无参数无返回值
        ((void (*) (id, SEL)) objc_msgSend )
            (self, NSSelectorFromString(@"method1"));
        
       
        // 有参数无返回值
        ((void (*)(id,SEL,NSString *)) objc_msgSend)
            (self,NSSelectorFromString(@"method2:"),@"333333");
        
        
        // 有参数有返回值
        NSString *objectValue = ((NSString * (*)(id, SEL,NSString *)) objc_msgSend)
            (self, NSSelectorFromString(@"method3:"),@"444444");
        NSLog(@"--返回值:%@---",objectValue);
    
    
    - (void)method1 {
        NSLog(@"-----无参数,无返回值-------");
    }
    
    - (void)method2:(NSString *)value {
        NSLog(@"-----有参数,无返回值:%@-------",value);
    }
    
    - (NSString *)method3:(NSString *)value {
        NSLog(@"-----有参数,有返回值:%@-------",value);
        return @"555555";
    }
    

    相关文章

      网友评论

          本文标题:iOS 运行时的一些方法

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