【发布时间】:2010-07-01 09:37:36
【问题描述】:
我想写这样的代码:
/*something*/ Fn() { ... }
int main()
{
/*something*/ fn = Fn;
while(fn) fn = fn();
return 0;
}
是否有可能这样做是一种完全类型安全的方式?假设 C、C++、D、C#、Java 或任何其他静态类型语言。
【问题讨论】:
-
它是一个非常简单的 DFA 引擎。或者使用
vector<something>,一个 NFA 引擎 -
Self referential type BTW 的可能重复项,接受的答案不是您问题的答案。看第二个答案。
标签: recursion function-pointers static-typing