gpt4 book ai didi

language-agnostic - 自修改代码?

转载 作者:行者123 更新时间:2023-12-04 06:10:56 25 4
gpt4 key购买 nike

我想做以下事情。我已经在我的程序中声明了一个结构,并且在程序执行时的运行时,如果有用户输入,我应该能够在我的代码中创建另一个新结构/编辑该结构。我们怎么能做到这一点?这就是“自我修改代码”吗?请澄清。请举一些例子。谢谢

让我谈谈我想要做什么,我有一个名为“student”的“结构/类”,其中包含“int roll_no”和“int reg_no”等变量。如果用户希望在运行时添加一个新变量,如“char name”,该怎么做?

最佳答案

看看这个:

http://bracha.org/Site/Talks.html

有关于反射的讨论,这可能是您想要的 - 反射不仅是关于自省(introspection)(大多数开发人员已经知道),而且还涉及改变语言结构和运行时代码操作的含义。

这类东西的最佳语言可能是 ruby​​ 和 smalltalk。

如果您的语言不支持这些功能,您仍然可以选择利用代码生成 - 这在几乎所有编程语言中都是可能的,但在具有“eval”支持的动态语言中要容易得多。例如,这种东西即使在 C/C++ 中也是可能的,但你的应用程序必须嵌入编译器。

Java 也是不错的选择(感谢类加载器和许多用于字节码操作的库)

哦,我差点忘了,看看 lisp 和 metacircular 评估。

关于language-agnostic - 自修改代码?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7783039/

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