国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學(xué)院 > 開發(fā)設(shè)計(jì) > 正文

Swift3.0--運(yùn)行時(shí)加載屬性列表

2019-11-09 16:56:45
字體:
供稿:網(wǎng)友
import UIKitclass Person: NSObject {    var name: String?;    var age: Int = 0;    var title: String?;    //PRivate,在運(yùn)行時(shí)同樣獲取不到屬性,(可以獲取到ivar),同樣會讓KVC崩潰    //    private var title: String?;            // 目標(biāo):獲取當(dāng)前類所有屬性的數(shù)組,使用運(yùn)行時(shí)    class func propertyList () -> [String] {                //1.獲取類的屬性列表        var count: UInt32 = 0;                let list = class_copyPropertyList(self, &count);                //2.遍歷數(shù)組//        for i in 0..<Int(count) {//            //            //3.根據(jù)下標(biāo)獲取屬性//            //objc_property_t//            let pty = list?[i];//            //            //4.獲取屬性的名稱 - c語言字符串//            // <Int8> -> c語言的字符串//            let cname = property_getName(pty!);//            //            //5.轉(zhuǎn)換成oc的字符串//            let name = String(utf8String: cname!);//            //            print(name ?? "");//            //        }                        for i in 0..<Int(count) {                        //3.根據(jù)下標(biāo)獲取屬性            //使用 guard 語法,以此判斷是否有值,只要有一項(xiàng)為nil,就不再執(zhí)行后續(xù)代碼            guard let pty = list?[i],                  let cname = property_getName(pty),                  let name = String(utf8String: cname)            else {                //繼續(xù)下一個(gè)循環(huán)                continue;            }                        //name是一定有值的            print(name);                    }                        //6.釋放c 的對象        free(list);                print("屬性的數(shù)量: /(count)");                return [];    }}
發(fā)表評論 共有條評論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 万山特区| 辉县市| 鄂伦春自治旗| 五峰| 盱眙县| 赣榆县| 措美县| 垣曲县| 博兴县| 中卫市| 会泽县| 永和县| 美姑县| 青铜峡市| 双城市| 寿阳县| 徐汇区| 龙泉市| 绥中县| 永善县| 崇州市| 湖北省| 南靖县| 奇台县| 桃源县| 佳木斯市| 潞西市| 中超| 时尚| 烟台市| 阜平县| 齐河县| 大渡口区| 松阳县| 安泽县| 易门县| 正宁县| 南木林县| 安丘市| 南涧| 雅安市|