牛客刷题
- 在()情况下适宜采用 inline 定义内联函数( C )
A 函数体含有循环语句
B 函数体含有递归语句
C 函数代码少、频繁调用
D 函数代码多,不常调用
内联函数概念:inline修饰的函数被称为内联函数,其特性是在编译阶段会将内联函数展开,即函数调用直接使用函数体进行替换,这样的好处是减少了函数调用参数压栈以及创建栈帧等开销,可以提高程序运行的效率。但是inline是一个建议性的关键字,一般函数不是很长并且没有循环和递归是可以作为内联函数使用。结合题中描述来看,应该选C.
######################################################################
- 在 c++ 语言中,对函数参数默认值描述正确的是(D)
A 函数参数的默认值只能设定一个
B 一个函数的参数若有多个,则参数默认值的设定可以不连续
C 函数参数必须设定默认值
D 在设定了参数的默认值后,该参数后面定义的所有参数都必须设定默认值
缺省参数是在函数声明和定义时,给函数参数带上一个默认值,这样可以在调用函数时,如果用户没有传递实参,则会使用默认值,如果传递了实参,则直接使用传递的参数。
缺省参数类型有两种:全缺省和半缺省。
全缺省是给所有参数都设置一个默认值
半缺省是给部分参数设置一个默认值,需要注意的是半缺省的给予默认值的顺序必须是从右往左进行缺省,否则会进行报错。
下面来看各个选项
A:函数参数的默认值可以设置多个,并不是一个,每个参数都可以设置一个默认值
B:缺省参数必须是连续的并且是从右往左进行缺省
C:函数可以设置缺省参数也可以不设置
D:正确
######################################################################
- 下面关于类定义的说法中,正确的是:(A)
A 类定义中包括数据成员和函数成员的声明
B 类成员的缺省访问权限是保护的
C 数据成员必须被声明为私有的
D 成员函数只能在类体外进行定义
A:正确,类定义中有两种定义方式:可以将声明和定义都放在类中,也可以在类中进行成员变量和函数的声明,在类外面进行定义,需要进行指定类域
B:class类的默认访问权限是私有的 struct的默认访问权限是public
C:数据成员变量只是建议设置为私有,成员函数设置为公有,但是不