美文网首页
iOS ##运算符

iOS ##运算符

作者: 可bing | 来源:发表于2018-12-21 16:14 被阅读0次

运算符可以用于宏函数的替换部分。这个运算符把两个语言符号组合成单个语言符号,为宏扩展提供了一种连接实际变元的手段

例子一:

#import "ViewController.h"

#define LB_Create(magic)  \
- (NSString *)magic {\
return [self lb_##magic];\
}\

@interface ViewController ()
@property (nonatomic, copy, readonly) NSString *testStr;
@property (nonatomic, copy, readonly) NSString *lb_testStr;
@end

@implementation ViewController

LB_Create(testStr)

- (void)viewDidLoad {
    [super viewDidLoad];
    
    NSLog(@"%@",self.testStr);
}

- (NSString *)lb_testStr {
    return @"you are so cool !";
}

@end

编译运行输出:

you are so cool !

就是个粘合剂,将前后两部分粘合起来,也就是有“字符化”的意思。但是“##”不能随意粘合任意字符,必须是合法的C语言标示符。在单一的宏定义中,最多可以出现一次“#”或“##”预处理操作符。如果没有指定与“#”或“##”预处理操作符相关的计算次序,则会产生问题。为避免该问题,在单一的宏定义中只能使用其中一种操作符(即,一份“#”或一个“##”,或都不用)。除非非常有必要,否则尽量不要使用“#”和“##”。

相关文章

  • Swift 5.1 (2) - 运算符

    级别: ★☆☆☆☆标签:「iOS」「Swift 5.1」「运算符」作者: 沐灵洛审校: QiShare团队 运算符...

  • iOS ##运算符

    运算符可以用于宏函数的替换部分。这个运算符把两个语言符号组合成单个语言符号,为宏扩展提供了一种连接实际变元的手段 ...

  • iOS 运算符

    Snip20150513_26.pngSnip20150513_27.png

  • IOS 一款简单的Swift布局框架-EasyLayout

    EasyLayout 简介 EasyLayout 是一个服务于ios,基于swift编写的布局框架。它定义了运算符...

  • iOS 代码规范

    iOS Swift 代码规范 编码格式 使用二元运算符(+, -,==, 或->)的前后都需要添加空格 let v...

  • python常用运算符的使用

    python七类运算符 算术运算符比较运算符逻辑运算符赋值运算符成员运算符身份运算符位运算符 赋值运算符 运算符描...

  • 运算符与字符串

    运算符 算数运算符、比较运算符、赋值运算符、逻辑运算符比较运算符:>、<、>=、<=、==、!=赋值运算符:=、+...

  • 4. Python运算符

    算数运算符 加法运算符: + 减法运算符: - 乘法运算符: * 除法运算符: / 幂运算符: ** 整除运算符:...

  • Golang——运算符和格式化输出

    运算符 算术运算符、关系运算符、逻辑运算符、位运算符、赋值运算符、其他运算符 算术运算符 + 相加- 相减* ...

  • Go语言基础之运算符

    运算符 Go 语言内置的运算符有: 算术运算符 关系运算符 逻辑运算符 位运算符 赋值运算符 算术运算符 运算符描...

网友评论

      本文标题:iOS ##运算符

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