1.通過class_copyIvarList拿到各個成員變量的ivar列表;
2.遍歷,通過ivar_getName獲取該成員變量的名字;
3.最后通過鍵值編碼obj.setValue(nil, forKey: iVarName)將成員變量的值置為空。
值得注意的是喻奥,純swift的對象是不支持runtime的滋将,所以通過class_copyIvarList拿不到ivar列表,只有成員變量被標記為@objc的才能使用runtime佩脊。
1.通過class_copyIvarList拿到各個成員變量的ivar列表;
2.遍歷,通過ivar_getName獲取該成員變量的名字;
3.最后通過鍵值編碼obj.setValue(nil, forKey: iVarName)將成員變量的值置為空。
值得注意的是喻奥,純swift的對象是不支持runtime的滋将,所以通過class_copyIvarList拿不到ivar列表,只有成員變量被標記為@objc的才能使用runtime佩脊。