亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

本來ObjA里沒有定義prop這個屬性,但是我通過 get 方法調用的時候,我希望可以調用到。

本來ObjA里沒有定義prop這個屬性,但是我通過 get 方法調用的時候,我希望可以調用到。

iOS
不負相思意 2023-04-25 19:15:16
在運行時Objective-C能不能想對象實例里注入一個對象?我看框架里都沒有這樣用的,是否不支持或者有沒有類似魔術方法之類的可以側面實現?如果可以實現的話,性能如何?對象@interface ObjA:NSObject@end@implement ObjA@endObjA *obja = [[ObjA alloc] init];// 在這里運行一段代碼,把本沒有定義的prop屬性注入對象 objaNSLog(@"%@", obja.prop);
查看完整描述

1 回答

?
12345678_0001

TA貢獻1802條經驗 獲得超5個贊

ObjA *obja = [[ObjA alloc] init];
objc_setAssociatedObject(obja, @"prop", @"SomeValueForProp", OBJC_ASSOCIATION_RETAIN_NONATOMIC);NSLog(@"%@", objc_getAssociatedObject(self, @"prop"));

輸出:

SomeValueForProp

另外,你那行NSLog(@"%@", obja.prop); .prop本身就是靜態的。


查看完整回答
反對 回復 2023-04-28
  • 1 回答
  • 0 關注
  • 187 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號