swit4 获取属性列表

news/2024/11/16 22:25:42/

class People: NSObject {

    

    var name:String?

    

    var age:Int = 0

    

    var title:String?

    

    

//    override init() {

//      //  name="dffe"

//

//       // let <#name#> = <#value#>

//        let cont = UInt32()

//

//

//        class_copyIvarList(self, &cont)

//      //  super.init()

//

//    }

//

  class  func propretyList() ->[String] {

        

    var cont:UInt32 = 4

    //这个在switf4中不行

  //  let list = class_copyPropertyList(self, &cont)

    let list = class_copyIvarList(self, &cont)

        

     print("属性个数\(cont)")

    

  //  print(list ?? <#default value#>)

        

        for i in 0..<Int(cont) {

            

            let pty = list?[i]

            //获取属性的名称<C语言字符串>

            //转换过程:Int8 -> Byte -> Char -> C语言字符串

            //let cName = property_getName(pty!)

            let cName = ivar_getName(pty!)

            //转换成String的字符串

            let name = String(utf8String: cName!)

            print(name!)

            

            

            

            

            

            

            

        }

          free(list) //释放list

        

        return []

    }

    

//    init(name:String) {

//        

//        self.name=name

//        

//        //super.init()

//    }

//    

}

转载于:https://www.cnblogs.com/hangman/p/8403825.html


http://www.ppmy.cn/news/754229.html

相关文章

数据结构第一章 绪论——走进数据的世界

名人说&#xff1a;唯一可以确定的是&#xff0c;明天会使我们所有人大吃一惊。——阿尔文托夫勒 本篇笔记整理&#xff1a;Code_流苏(CSDN)&#xff08;一个喜欢古诗词和编程的Coder&#x1f60a;&#xff09; ✔ 课件资料及视频课程学习&#xff1a;王道 数据结构&#xff08…

既然有指针了,为什么 C++ 还搞个引用出来?

1. 对象的定义&#xff1a; 对象是指一块能存储数据并具有某种类型的内存空间&#xff1b; 一个对象a&#xff0c;它有值和地址&a&#xff0c;运行程序时&#xff0c;计算机会为该对象分配存储空间&#xff0c;来存储该对象的值&#xff0c;我们通过该对象的地址&#xf…

PHP生成一寸照片代码,ps做一寸证件照的步骤

生活中我们经常会遇到需要证件照的场合&#xff0c;好看的证件照也能给个人形象加分。那么怎么用ps做一寸证件照呢&#xff1f;下面为大家分享用ps做一寸证件照的步骤。 我们先放一张表格&#xff0c;来了解下一般证件照所需要的尺寸&#xff1a; ps做一寸证件照的步骤&#xf…

PyQt---------信号与槽函数的关系

1.信号&#xff08;Signal&#xff09; 信号是在特定情况下被发射的一种通告。举例&#xff1a; PushButton 的信号是鼠标单击时发射的 clicked 信号 2.槽&#xff08;Slot&#xff09; 对信号相应的函数。举例&#xff1a; QWidget 有一个槽函数&#xff0c;功能是关闭窗口 …

寸照尺寸

[常识]一寸照片是多大? 一寸2.5*3.5cm295*413像素 1寸照片 平时都用寸来表示照片的规格但很多朋友包括我在内都还搞不清楚这1 寸照片到底是多大二寸照片为何不是一寸照片的两倍大一寸是多少像素等问 题现在就把常用的照片尺寸、对应的大小厘米及数码相机分…

开源项目推荐 【SkyEyeSystem】

大家好&#xff0c;今天向大家推荐一个开源项目——SkyEyeSystem。 这是一个基于Spring Boot的全网热点爬虫项目&#xff0c;旨在提供全面而准确的全网热搜数据。 关于项目 SkyEyeSystem通过定时任务间隔10min爬取全网热搜数据。目前包括的平台有&#xff1a; 微博热搜B站热…

【Redis】缓存穿透、缓存击穿、缓存雪崩的原因及解决方案

文章目录 一、缓存穿透1.1 产生原因1.2 解决方法接口校验对空值进行缓存使用布隆过滤器实时监控 二、缓存雪崩2.2 解决方法将失效时间分散开给业务添加多级缓存构建缓存高可用集群使用锁或者队列的方式设置缓存标记 三、缓存击穿3.2 解决方法使用互斥锁”提前“使用互斥锁 / 逻…

电商扣减库存_电商后台产品经理宝典

作者:清水红牙搬运 by A小蚊子丨ID:xiaowenzileyuan想了解更多,欢迎关注公众号“A小蚊子(xiaowenzileyuan)”,更多精彩内容、知识大礼包等你发现。欢迎将此文分享给更多朋友,大家共同精进电商架构 电商架构(图电商核心模块(图商品中心 管理SKU:最小库存单位管理SPU:…