【发布时间】:2023-03-12 04:00:01
【问题描述】:
在某些语言中(想到 PHP 和 JavaScript),我可以将变量用作函数。例如:
PHP: Class::$var_function();
是否可以在 C++ 中以不需要 switch 或 if 语句的方式实现这一点?
【问题讨论】:
-
必须指出,上面的PHP sn-p 没有使用变量作为函数。它使用变量为方法调用动态创建标识符(“变量变量”的一种形式)。在下面的 C/C++ 代码中,使用了函数的实际“句柄”(函数指针或 std::function)并且标识符本身是稳定的。cmets 只能编辑 5 分钟(单击此框可关闭)
-
(在 JavaScript 的情况下,它在这方面与 PHP 非常不同,函数是适当的一等值并且表现得与任何其他对象值一样:对象就是它自己。)