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

    //    }

    //    

    }

    一天一章
  • 相关阅读:
    Dom探索之基础详解
    PS切图(一)
    软件工程课程建议
    【一周读书】一点营养学笔记
    【一周读书】自卑与超越
    【一周读书】先教育好自己,再谈教导孩子
    【一周读书】学习如何学习
    【一周读书】你的理想
    结对项目编程
    Day4——提权学习之MySQL数据库(启动项提权)
  • 原文地址:https://www.cnblogs.com/hangman/p/8403825.html
Copyright © 2011-2022 走看看