首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有如下函数模板: template<typename T,typename U> T cast(Uu){ return u;} 其功能是将U类型数据转换为T类型数据。已知i为int型变量,下列对模板函数cast的调用中正确的是
有如下函数模板: template<typename T,typename U> T cast(Uu){ return u;} 其功能是将U类型数据转换为T类型数据。已知i为int型变量,下列对模板函数cast的调用中正确的是
admin
2017-10-17
29
问题
有如下函数模板: template<typename T,typename U> T cast(Uu){ return u;} 其功能是将U类型数据转换为T类型数据。已知i为int型变量,下列对模板函数cast的调用中正确的是
选项
A、cast(i);
B、cast<>(i);
C、cast<char*,int>(i);
D、cast<double,int>(i);
答案
D
解析
本题考查的知识点是模板函数的调用。在调用一个模板函数时,编译系统需要足够的信息来判别每个虚拟类型参数所对应的实际类型,可以从两个不同的渠道获得这样的信息:从模板的实参表(用<和>括起来的参数表)或从模板函数实参表 (用(和)括起来的参数表),模板实参的信息优先于函数实参的信息。如果从后者获得的信息已经能够判定其中部分或全部虚拟类型参数所对应的实际参数,而且它们又正好是参数表中最后的若干参数,则模板实参表中的那几个参数可以省略。如果模板实参表中的实参都被省略了,则连空表<>也可以不要。本题中cast()函数的实参 i只能确定模板参数u的类型为int,而不能确定另外一个模板参数T。故选项A与B不正确。选项C希望将int转型为char*,C++中不允许隐式的这样转换类型,所以也不正确。故应该选择D。
转载请注明原文地址:https://kaotiyun.com/show/1XAp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
在函数原型声明中,可以省略参数名,但必须声明函数参数的【 】。
在面向对象方法中,一个对象请求另一对象为其服务的方式是通过发送
假定MyClass为一个类,则该类的拷贝构造函数的声明语句为
下面关于数组的初始化正确的是
以下程序的功能是按顺序读入10名学生4门课程的成绩,计算出每位学生的平均分并输出: main( ) {int n, k, float score, sum, ave;
下面是类MyClass的定义,对定义中各语句描述正确的是()。classMyClass{private:intx,y,z;public:voidMyClass(intA){
设有如下关系表:则下列操作中正确的是
在面向对象方法中,类之间共享属性和操作的机制称为______。
下列不属于软件工程三要素的是( )。
按照标识符的要求,下列选项中,()符号不能组成标识符。
随机试题
运用购买法对非同一控制下企业合并进行核算时,购买成本的确定基础是【】
人与人之间的沟通过程中有重要意义的是()。
JeeHockandMengKimwereverygoodfriends.JeeHockcouldnotsee.Hewasblind.MengKimcouldnotwalk.Hewaslame.Theyl
急性酒精中毒兴奋期血中酒精浓度是
卡马西平的中毒症状中描述错误的是
完全脱位的外伤牙进行再植,效果好的是在脱臼后
下列药物处方名为正名的是()。
房地产有三种存在形态:土地、建筑物和房地。()
已经缴纳车辆购置税的车辆,纳税人应到车购办申请退税的有()。
纸的出现是人类书写材料的一次革命,它极大地促进了文化传播。下列人物与纸的发明、改进直接相关的是:
最新回复
(
0
)