在函数内部使用声明函数?
可能的重复:
函数内部的函数声明是否有用?
我知道在函数内部我们可以声明一个函数。它有什么用呢?你能举一个简单的例子吗?
Possible Duplicate:
Is there a use for function declarations inside functions?
I know that inside function we can declare a function. What is the use of it? Can you please bring a simple example?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
在函数内部声明函数没有什么价值,除非您打算稍后定义它并且仅使其可供该函数使用 - 即函数声明被封装。
但仅此而已。与触发最令人烦恼的解析相比,这充其量只是一个极其有限的好处。
There is little value to declaring a function inside a function, unless you intend on defining it later and only having it available to that function- i.e., the function declaration is encapsulated.
But that's it. In comparison to triggering the Most Vexing Parse, this is an extremely limited benefit at best.
AFAIK,在 C/C++ 中的函数内部定义函数是非标准的,只有一些编译器支持它。但是,您可以使用新的 C++ 功能,即所谓的 lambda 函数。
在其他函数内部定义函数(或 lambda 函数)有多种用途(取决于实现):
AFAIK, defining functions inside functions in C/C++ is non-standard and only some compilers support it. However, you can use the new C++ feature, so-called lambda functions.
Defining functions (or lambda functions) inside of other functions can be useful in several ways (depending on the implementation):