首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请打开考生文件夹下的解决方案文件proj1,此工程包含一个源程序文件proj1.cpp。文件中将表示数组元素个数的常量Size定义为4,并用int类型对类模板进行了实例化。文件中位于每个注释“//ERROR****found****”之后的一行语句存在错误
请打开考生文件夹下的解决方案文件proj1,此工程包含一个源程序文件proj1.cpp。文件中将表示数组元素个数的常量Size定义为4,并用int类型对类模板进行了实例化。文件中位于每个注释“//ERROR****found****”之后的一行语句存在错误
admin
2018-07-06
78
问题
请打开考生文件夹下的解决方案文件proj1,此工程包含一个源程序文件proj1.cpp。文件中将表示数组元素个数的常量Size定义为4,并用int类型对类模板进行了实例化。文件中位于每个注释“//ERROR****found****”之后的一行语句存在错误。请改正这些错误,使程序的输出结果为:
1 2 3 4
注意:模板参数名用T。只修改注释“//ERROR********found********”的下一行语句,不要改动程序中的其他内容。
//proj1.cpp
#include<iostream>
using namespace std;
//将数组元素个数size定义为4
//ERROR********found********
const int size;
template<typename T>
class MyClasS
{
public:
MyClass(T*p)
{
for(int i=0;i<Size;i++)
arrays
=p[j];
}
void Print( );
private:
Tarray[size];
};
template<typename T>
//ERROR*******found*******
void MyClass::Print( )
{
for(int i=0;i<size;i++)
cout<<array
<<’\t’;
}
int main( )
{
int intArray[Size]={1,2,3,4};
//ERROR*******found*******
MyClass<double>obj(intArray);
obj.Print( );
cout<<endl;
return0;
}
选项
答案
(1)const int Size=4; (2)void MyClass<T>::Print( ) (3)MyClass<inl>obj(intArray);
解析
(1)主要考查考生对eonst变量的掌握,因为const变量不能修改,所以在定义的同时必须仞始化。
(2)主要考查考生对模板类的成员函数定义的掌握,因为MyClass类是模板类,所以在定义该函数时要加上模板标识符“<T>”,即语句void MyClass<T>::Print( )。
(3)主要考查考生对模板类构造函数的调用的理解,从上一条语句int intArray[Size]={1,2,3,4};中可以知道intArray为int型,因此定义obj时要使用<int>,即MyClass<int>obj(intArrav);。
转载请注明原文地址:https://kaotiyun.com/show/JAAp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
有如下类定义:classAA{inta;public:intgetRef()const{return&a;}//①intgetValue(
有如下程序:#include<iostream>usingnamespacestd;intmain(){int*p;*p=9;cout<<"Thev
有如下程序:intx=3;do{x-=2;cout<<x;}while(!(--x));执行这个程序的输出结果是()。
下列选项中不属于软件工程3个要素的是()。
如果要把返回值为void的函数A声明为类B的友元函数,则应在类B的定义中加入的语句是______。
有下列程序:#include<iostream>usingnamespacestd;classTestClass{inta;public:TestClass(int
设有下定义的语句:inta[3][2]={10,20,30,40,50,60};intb[3][2]={10,20,30,40,50,60};则a[1][1]*b[2][1)的结果为()。
请将下列类定义补充完整。classBase{public:voidfun(){tout<<"Base::fun"<<endl;}};classDerived:publicBase{public:voidfun(
随机试题
A.中肾管B.中肾小管C.中肾旁管D.卵黄囊后壁的内胚层原始生殖细胞来源于()
骨折的临床愈合标准。
B胆汁呈
已知数字信号X和数字信号Y的波形如图7-4—5所示,则数字信号F=XY的波形为()。[2013年真题]
某房产开发公司(位于市区)2009年7月发生了下列业务:(1)将新建的一栋房屋无偿捐赠给一所小学。该房屋由其他单位施工,账面成本1000万元(成本利润率为10%);(2)以本公司的一栋旧办公楼对外投资,参与接受投资方利润分配、共同承担投资风
甲上市公司2010年初发行在外的普通股20000万股,6月1日新发行6000万股;10月1日回购4000万股,以备将来奖励职工。甲公司当年实现的利润总额为5000万元,归属于普通股股东的净利润为4800万元。则2010年甲公司基本每股收益为()。
青年期自我意识发展的最主要特点是将注意力集中到()。
首次出现专门从事教育工作的教师,产生学校的时期不是()。
已知点C(2,一3),M(1,2),N(一1,一5),则点C到直线MN的距离等于().
设f(x)在(-1,1)内二阶连续可导,且f"(x)≠0.证明:对(-1,1)内任一点x≠0,存在唯一的θ(x)∈(0,1),使得f(x)=f(0)+xf’[θ(x)x];
最新回复
(
0
)