C 中的嵌套函数
问题: 是否可以在 C 中的其他函数中定义函数?
答案:
现代 C(C 11 或更高版本):
是的,您可以使用以下命令创建嵌套函数lambda。 Lambda 允许您定义可以捕获其范围内的局部变量的匿名函数。
int main() { auto print_message = [](std::string message) { std::cout << message << "\n"; }; print_message("Hello!"); }
C 98 和 C 03:
在 C 98 和 C 03 中,不支持在函数内直接定义函数。但是,您可以使用以下技术:
int main() { struct X { static void a() {} }; X::a(); }
虽然这允许您在内部创建函数函数,它被认为是一种解决方法,并且应该谨慎使用,因为它可能会导致代码理解晦涩难懂。
以上是C 函数可以嵌套吗?的详细内容。更多信息请关注PHP中文网其他相关文章!