具有提示功能的KeyPath宏

宏的定义:

#define KeyPath(obj, keyPath) @(((void)obj.keyPath, #keyPath))

 示例代码:

#import "ViewController.h"

#define KeyPath(obj, keyPath) @(((void)obj.keyPath, #keyPath))

@implementation ViewController

- (void)viewDidLoad {
    [super viewDidLoad];
    
    NSLog(@"KeyPath(self.view, frame) = %@", KeyPath(self.view, frame));
}

@end

输出:

KeyPath(self.view, frame) = frame

备注:

该宏在使用中可以在输入完KeyPath(self.view后,再输入字符f,可以利用代码提示功能提示出self.view对象以字母f开头的所有属性。

原文地址:https://www.cnblogs.com/xwoder/p/6246398.html