我在这里谈论C和/或C++,因为这是我所知道的唯一用于解释器的语言,其中以下可能是一个问题:
如果我们有一个解释型语言X,为它编写的库如何为该语言添加函数,然后可以从用该语言编写的程序中调用它?
PHP示例:
substr( $str, 5, 10 );
Run Code Online (Sandbox Code Playgroud)
PHP将所有已注册的函数名称存储在数组中并在脚本中调用函数时很容易.但是,由于C(++)中显然没有eval,那么如何调用该函数呢?我假设PHP没有100MB的代码,如:
if( identifier == "substr" )
{
return PHP_SUBSTR(...);
} else if( ... ) {
...
}
Run Code Online (Sandbox Code Playgroud)
哈哈,那会很有趣.我希望你到目前为止理解我的问题.