zoukankan      html  css  js  c++  java
  • swit4 获取属性列表

    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()

    //    }

    //    

    }

    一天一章
  • 相关阅读:
    java中Excel导出
    springmvc接收各种参数
    restTemplate使用
    java中io流的操作
    在线Cron表达式生成器
    springBoot实现socketio
    maven的使用
    idea中导入githup项目
    java 单例模式之线程安全的饿汉模式和懒汉模式
    spring定时任务的集中实现
  • 原文地址:https://www.cnblogs.com/hangman/p/8403825.html
Copyright © 2011-2022 走看看