使用宏定义替换代码,有可能出现重复定义

@(逆向之师傅和我)

经常出现重复定义这样的问题。那么我们就要去给他设置。这个是结果.

#import "ViewController.h"
#import "NSString+LRExtension.h"

#define LWUpDefineFunction(name,key) \
{\
NSString *add = [NSString stringWithFormat:@"temp-%@",name];\
NSString *up = [add uppercaseString];\
key = up;\
}

@interface ViewController ()
@property (weak, nonatomic) IBOutlet UILabel *resultLabel;
@property (weak, nonatomic) IBOutlet UITextField *textFiled;
@property (weak, nonatomic) IBOutlet UILabel *otehrLabel;

@end

@implementation ViewController

- (void)viewDidLoad{
    [super viewDidLoad];
    
    {
        NSString *name = @"wangxin";
    }
    
    NSString *k1 = nil;
    LWUpDefineFunction(@"adsf",k1)
    NSLog(@"k1 = %@",k1);
    
    
    NSString *k2 = nil;
    LWUpDefineFunction(@"tttk2",k2)
    NSLog(@"k2 = %@",k2);
    
    /**
    NSString *name = @"Lnm";
    NSLog(@"%@",[self up:name]);
    */
    
}

PS:加一个东西,防止以往

- (BOOL)isIncludeSpecialCharact{
    //提示 标签不能输入特殊字符
    NSString *SpecialStr =@"^[A-Za-z0-9\\u4e00-\u9fa5]+$";
    NSPredicate* emailTest = [NSPredicate predicateWithFormat:@"SELF MATCHES %@", SpecialStr];
    if (![emailTest evaluateWithObject:self]) {
        return YES;
    }
    return NO;
}
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 173,446评论 25 708
  • 我沉默寡言的原因 是懒得理你 当我滔滔不绝之时 一定是醉了 不是醉于发酵的粮食 而是醉于发酵的人生 二零一七年五月十三日
    楊孜阅读 484评论 0 1
  • 无聊小姐领着一袋子的吃的,刚从朋友工作那儿坐了会儿出来,烈日加上三十几度的高温使她不得不又缩回了商场,把原先要坐公...
    麓離阅读 438评论 2 1
  • 一.state和props 这里首先说一下概念,props一般属于父组件,然后getDefaultProps是设置...
    追风的云月阅读 886评论 0 3
  • 【青春推迟,换我守候】 春风十里,杨柳依依,挂在胸前的那颗心,悬在半空。逼着自己说不爱,逼着自己成熟,逼着自...
    诗丝阅读 161评论 0 0