宏相关

在指定时间处理任务

//dispatch_after
//参数一是指定的时间,参数二是任务执行队列(默认是主队列),第三个是任务函数
// dispatch_time_t的构造方式,DISPATCH_TIME_NOW表示现在,NSEC_PER_SEC表示的是秒数,它还提供了NSEC_PER_MSEC表示毫秒。
 dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (0.5 * NSEC_PER_SEC)), dispatch_get_main_queue(), ^{
            @strongify(self);
            [self launchWithAnimate];
        });

宏指令

//普通的参数可以直接在指令体里使用
#define xxx(a,b)  @(a+b)
//字符串参数要用#来代替双引号
#define xxx(a,b) @#a#b //相当于@"$a $b" $x是参数值
//可变参数 在宏里是... 在函数里可变参数是__VA_ARGS__
//此处代表VJLog宏接受到的参数都会传给 NSLog宏
#define VJLog(...) NSLog(__VA_ARGS__);

你可能感兴趣的:(宏相关)