内联函数的优缺点?通常在什么情况下使用?

题目
问答题
内联函数的优缺点?通常在什么情况下使用?
参考答案和解析
正确答案: 优点是提高运行时间效率,缺点是增加了空间开销内联函数在C++类中,应用最广的,用来定义存取函数。我们定义的类中一般会把数据成员定义成私有的或者保护的,这样,外界就不能直接读写我们类成员的数据了。对于私有或者保护成员的读写就必须使用成员接口函数来进行。如果我们把这些读写成员函数定义成内联函数的话,将会获得比较好的效率。
解析: 暂无解析
如果没有搜索结果或未解决您的问题,请直接 联系老师 获取答案。
相似问题和答案

第1题:

( 11 )为了取代 C 中带参数的宏,在 C++ 中使用

A )重载函数

B )内联函数

C )递归函数

D )友元函数


正确答案:B

第2题:

为了取代C中带参数的宏,在C++中使用

A.重载函数

B.内联函数

C.递归函数

D.友元函数


正确答案:B
解析:本题考查的知识点是;内联函数。C++引入内联(inline)函数的原因是用它来取代C中的预处理宏函数,即带参数的宏。故本题应该选择B。

第3题:

下列有关内联函数的叙述中,正确的是______。

A.内联函数在调用时发生控制转移

B.内联函数必须通过关键字inline 来定义

C.内联函数是通过编译器来实现的

D.内联函数体的最后一条语句必须是rennin 语句


正确答案:A

第4题:

SQLServer 2008允许用户自己定义函数。关于内联表值函数,有下列说法:Ⅰ.在内联表值函数中,没有相关联的返回变量Ⅱ.内联表值函数通过INSERT语句填充函数返回的表值Ⅲ.内联表值函数的作用类似于带参数的视图Ⅳ.调用内联表值函数时,只能将内联表值函数放置在FROM子句中上述说法中正确的是( )。

A.仅Ⅱ

B.仅Ⅱ和Ⅲ

C.仅Ⅰ、Ⅱ和Ⅳ

D.仅Ⅰ、Ⅲ和Ⅳ


正确答案:D
内联表值函数的返回值是一个表,该表的内容是一个查询语句的结果;内联表值函数的使用与视图非常相似,需要放在查询语句的FROM子句中,作用很像是带参数的视图;内联表值函数通过SELECT语句填充函数返回的表值。

第5题:

成员函数体写在类外部的一定不是内联函数,写在类内部的一定是内联函数。()


参考答案:错误

第6题:

下列有关内联函数的叙述中,正确的是( )。

A.内联函数在调用时发生控制转移

B.内联函数必须通过关键字inline来定义

C.内联函数是通过编译器来实现的

D.内联函数函数体的最后一条语句必须是return语句


正确答案:C
解析:此题考查的是内联函数的概念.在调用时,内联函数会像宏函数一样地层开,将调用表达式用内联函数体来替换,所以它没有一般函数的参数压栈和退栈操作,所以选项A) 错误;即使没有使用inline说明,编译器也会将在类的说明部分定义的函数认定为内联函数,所以选项B) 错误:内联函数只是比普通函数有更高的执行效率。对于类型为void的函数,它不需要返回任何函数值,所以在函数体中既可以使用return语句,也可以不使用,选项D) 错误。

第7题:

下列有关内联函数的描述中,错误的是()。

A.内联函数必须在定义处加上inline关键字,否则就是普通的函数

B.内联函数必须是一个小函数,不能包含循环、switch等语句

C.一个函数中如果包含循环、switch等语句,则将其定义为内联函数时编译器会报错

D.在编译程序时,系统会直接将调用内联函数的地方用内联函数中的语句体做等价替换,从而省去运行程序时函数调用所额外消耗的时间


正确答案:C

第8题:

( 11 )下列有关内联函数的叙述中,正确的是

A )内联函数在调用时发生控制转移

B )内联函数必须通过关键字 inline 来定义

C )内联函数是通过编译器来实现的

D )内联函数函数体的最后一条语句必须是 return 语句


正确答案:C

第9题:

关于内联函数的说法,不正确的是( )。

A.在说明类的同时定义成员函数,则函数隐含为内联函数

B.也可在类外用inline关键字对成员函数进行说明,则该函数也为内联函数

C.当内联函数被调用时,内联函数的代码在调用处被展开

D.当内联函数被调用时,内联函数将返回结果


正确答案:D
解析:内联函数被调用时,只是把代码在被调用处展开,不是把函数的运算结果返回。

第10题:

下列说法正确的是( )。 A.内联函数在运行时将该函数的目标代码插入每个调用该函数的地方

下列说法正确的是( )。

A.内联函数在运行时将该函数的目标代码插入每个调用该函数的地方

B.内联函数在编译时将该函数的目标代码插入每个调用该函数的地方

C.类的内联函数必须在类体内定义

D.类的内联函数必须在类体外通过加关键字inline定义


正确答案:B
B。【解析】本题考查的是内联函数的定义,引入内联函数是为了解决程序中函数调用的效率问题,是以目标代码的增加为代价换取时间的节省;一般函数在运行时被调用,而调用的内联函数在编译时就被替代了,如果不加in-line关键字,则编译器会将在类说明部分定义的任何函数都被认定为内联函数。