什么是反思,为什么它有用?
我对Java特别感兴趣,但我认为在任何语言中原则都是一样的.
我很好奇是否有人使用过UnderC,Cint,Cling,Ch或任何其他C++解释器并且可以分享他们的经验.
我一直在尝试在C中制作一个eval函数.
目前,我的想法是String -> function pointer使用所有标准库C函数和我所做的所有函数进行散列,这样我就可以处理函数调用(在已经定义的函数上).
但是,用字符串定义函数(即调用eval("int fun(){return 1;}"))仍然是一个问题,我不知道如何在运行时处理它,有没有人有任何想法?
变量定义似乎不是太大的问题,因为我可以使用另一个哈希var_name -> pointer并在需要变量时使用该指针.
顺便说一句,我不关心性能,我想让这个工作.
你能根据整数是一个函数来调用函数吗?
这就是我的意思:
#include <iostream>
using namespace std;
int whichFunction;
int main()
{
cout << "Which function do you want to call?";
cin >> whichFunction;
function[whichFunction]();
//If you entered 1, it would call function1 - same with 2, 3
//or Hihihi (of course only when whichFunction would be a string)
}
void function1()
{
cout << "Function No. 1 was called!";
}
void function2()
{
cout << "Function No. 2 was called!";
}
void functionHihihi()
{
cout << "Function Hihihi was …Run Code Online (Sandbox Code Playgroud)