求解此C++问题

下列有关内联函数的描述中,(  )是错误的。
A.静态函数可以定义为内联函数;
B.内联函数中不能含有任何循环以及switch和goto语句;
C.内联函数的定义必须出现在内联函数第一次被调用之前;
D.递归函数不能定义为内联函数。

答案是B,可是解析里又说B是对的,到底选什么???

内联函数是使用inline关键字声明的函数,也成内嵌函数,它主要的作用是解决程序的运行效率。
使用内联函数的时候要注意:
1.递归函数不能定义为内联函数
2.内联函数一般适合于不存在while和switch等复杂的结构且只有1~5条语句的小函数上,否则编译系统将该函数视为普通函数。
3.内联函数只能先定义后使用,否则编译系统也会把它认为是普通函数。
4.对内联函数不能进行异常的接口声明。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2017-10-07
B,你可以找一下相关旳书
相似回答