首页 > 试题广场 >

C++是否支持嵌套函数定义

[单选题]
C++是否支持嵌套函数定义,如下代码所示?
fun1() { 
    fun2() { 
        fun3() { 
        } 
    }
}
  • 允许
  • 不允许
函数可以嵌套调用,但不可以嵌套定义。
发表于 2015-09-05 15:32:03 回复(0)
C++中函数可以嵌套调用,但是不可以嵌套定义。
发表于 2016-05-20 17:10:49 回复(0)
嵌套定义是什么?
发表于 2017-12-24 17:59:37 回复(1)
可以嵌套调用,不能嵌套定义
发表于 2022-03-01 14:44:43 回复(0)
可以嵌套调用,不可以嵌套调用
发表于 2018-03-03 13:55:52 回复(2)
递归是属于嵌套调用,可以的,但是嵌套定义是不行的
发表于 2017-01-04 23:09:43 回复(0)
C++11中可以用lambda表达式进行 嵌套函数定义 ,但像题目的例子这样写不行
发表于 2016-11-14 11:35:57 回复(0)
看清题目,是函数定义,不是函数调用,C++中,函数可以嵌套调用,不能嵌套定义
发表于 2016-09-06 09:44:36 回复(0)
看成  函数声明了。。。(无语)
发表于 2021-10-23 10:37:01 回复(0)
C++中规定不可以嵌套定义,但可以嵌套调用。
发表于 2017-10-27 23:35:06 回复(0)
C++不直接支持在函数内部定义嵌套函数。嵌套函数是指在一个函数内部定义另一个函数。然而,可以通过使用lambda表达式来模拟嵌套函数的行为。Lambda表达式是C++11引入的一种特性,它允许在函数内部定义匿名函数。这样就可以在函数内部创建一个可调用对象,类似于嵌套函数的效果。

下面是一个示例代码:
#include <iostream>

void outerFunction()
{
    // 声明并定义lambda表达式作为内部函数
    auto innerFunction = []() {
        std::cout << "This is the inner function." << std::endl;
    };

    // 调用内部函数
    innerFunction();
}

int main()
{
    outerFunction();
    return 0;
}
在这个示例中,`outerFunction`函数内部定义了一个lambda表达式作为内部函数`innerFunction`,然后通过调用`innerFunction()`来执行内部函数的逻辑。这种方式可以实现类似嵌套函数的效果。需要注意的是,lambda表达式有一些限制,例如不能像普通函数那样传递给其他函数作为参数或返回值。对于更复杂的需求,可以考虑使用其他技术,如将内部函数定义为类的成员函数。
发表于 2023-09-25 20:44:12 回复(0)
C/C++的函数都不能嵌套定义,即不能在一个函数内部重新写一个新的函数,但是可以在已经写好的函数内部调用其他也写好的函数
发表于 2023-09-15 11:38:21 回复(0)
python可以嵌套定义,c++不行
发表于 2022-06-05 14:46:59 回复(0)
注意”定义“两个字
发表于 2022-04-15 15:20:22 回复(0)
C++可以进行函数的循环调用,但是不能进行函数的循环定义.
发表于 2022-03-16 19:13:19 回复(0)
c在g++可以,c++不可以
发表于 2022-03-10 09:24:34 回复(0)
函数可以嵌套调用,不可嵌套定义
发表于 2022-01-15 18:55:06 回复(0)
函数可以嵌套调用 不可以嵌套定义
发表于 2021-05-28 20:00:09 回复(0)

函数可以嵌套调用,不可嵌套定义

发表于 2019-07-08 09:42:59 回复(0)
不能嵌套定义,可以嵌套调用,意思是可以写在参数里面
发表于 2018-06-04 07:31:41 回复(0)