gpt4 book ai didi

objective-c - 自动生成代码以创建具有未知类的对象

转载 作者:太空狗 更新时间:2023-10-30 04:00:08 24 4
gpt4 key购买 nike

<分区>

我正在用 Python 编写一个脚本,该脚本读取自定义文本并从中生成 Objective-C 代码。正文结构如下:

<XClassName> {
property_name_1 {
var_name_1: var_value_1
var_name_2: var_value_2
property_name_2 {
var_name_3: var_value_3
}
property_name_2 {
var_name_3: var_value_4
}
}
property_name_3 {
}
}

生成这样的 Objective-C 代码:

XClassName* object = [[XClassName alloc] init];
object.propertyName1 = [[[object.propertyName1 class] alloc] init];
object.propertyName1.varName1 = varValue1;
object.propertyName1.varName2 = varValue2;
object.propertyName2Array = [NSMutableArray array];
{
PropertyName2Class propertyName2 = [[PropertyName2Class alloc] init];
propertyName2.varName3 = varValue3;
[object.propertyName2Array addObject:propertyName2];
}
{
PropertyName2Class propertyName2 = [[PropertyName2Class alloc] init];
propertyName2.varName3 = varValue4;
[object.propertyName2Array addObject:propertyName2];
}
object.propertyName3 = [[[object.propertyName3 class] alloc] init];

这很好,只是 PropertyName2Class 在脚本运行时是未知的。现在我必须手动查找对象数组预期元素的类名,但这违背了让脚本自动执行它的目的。

有没有办法在不知道类名和为其属性赋值的情况下动态创建对象?像这样的东西:

id classObject = ...; // How to instantiate a dynamic unknown class?
classObject.property1 = 1;
classObject.property2 = @"Hello World!";

有什么想法吗?

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com