• Xcode开发--运行时runtime


    运行时(runtime)

    什么是运行时?

    • 运行时是苹果提供的纯C语言的开发库

    运行时的作用

    • 能获得某个类的所有成员变量
    • 能获得某个类的所有属性
    • 能获得某个类的所有方法
    • 交换方法实现
    • 能动态添加一个成员变量
    • 能动态添加一个属性
    • 能动态添加一个方法

    运行时实例

    应用1:打印某个类的所有成员变量(实例变量)--class_ copy_IvarList()

    函数说明:

    • 需要添加#import < objc/runtime.h >
    • I -> Instance->实例变量即成员变量
    • var ->variable->变量
    • 如果函数名中包含了copy ew etaincreate 那么这个函数返回的数据就需要手动释放
    #import <objc/runtime.h>
    
    - (void)example
    {
    	 //成员变量的数量
            unsigned int outCount = 0;
            
            //获得所有的成员变量
            //ivas是一个指向成员变量的指针
            //默认指向第0个成员变量(最前面)
            Ivar *ivars =  class_copyIvarList([UITextField class], &outCount);
            
            //一个Ivar就代表一个成员变量(Instancec variable)
            //遍历所有的成员变量
            for (int i = 0; i < outCount; i++) {
                //取出i位置对应的成员变量
                Ivar ivar = *(ivars + i); //==ivars[i]
                //C语言允许,指向第0个成员变量的指针可以用数组方式访问
                //Ivar ivar = ivars[i];
                //获得成员变量的名字
                NSLog(@"%s",ivar_getName(ivar));
            }
            
            //如果函数名中包含了copy
    ew
    etaincreate 那么这个函数返回的数据就需要手动释放
            free(ivars);
    }
    
    
    
  • 相关阅读:
    idea--不能启动问题
    linux--mysql5.7安装
    vmware
    debezium
    java枚举
    springfox
    日志级别
    lombok--知识点
    es6--箭头函数
    网址访问过慢
  • 原文地址:https://www.cnblogs.com/KrystalNa/p/4796626.html
Copyright © 2020-2023  润新知