计算机二级

有如下的类的模板定义: template class MyClass { private:T number; public:MyClass(有如下的类的模板定义:template <class T>class MyClass{private:T number;public:MyClass(T k);…};其中构造函数MyClass()用k的值初始化数据成员n。因此在模板类体外,构造函数MyClass应定义为【 】。

题目
有如下的类的模板定义: template class MyClass { private:T number; public:MyClass(

有如下的类的模板定义:

template <class T>

class MyClass

{

private:

T number;

public:

MyClass(T k);

};

其中构造函数MyClass()用k的值初始化数据成员n。因此在模板类体外,构造函数

MyClass应定义为【 】。

如果没有搜索结果,请直接 联系老师 获取答案。
如果没有搜索结果,请直接 联系老师 获取答案。
相似问题和答案

第1题:

下列的模板说明中,正确的是()

A.template <typename T1, typename T2>

B.template <class T1, T2>

C.template < T1 class, T2 class >

D.template <typename T1; typename T2>


【审题分析】(1)主要考查表结构的创建和主要的设置方法。(2)王要考查字段属性中“有效性规则”和有效文本设置,这里还涉及及关于“日期”、“时间”函数的使用。涉及的函数有dataserial0,,ear(1,date0。(3)主要考查表结构中主键的设置方法和主键字段分析方法。(4)主要考查默认字段的设置。是、否型的逻辑值。是:1,否:0,以及“掩码”的设置方法。(5)和(2)相同,主要是有效文本的设置。(6)考查表记录的添加。 【操作步骤】 步骤1:双击“sampl.mdb”数据库,单击“表”对象,双击“使用设计器创建表”。在表设计窗口中,输入字段名“编号”对应类型选择“文本”,修改“字段大小”为“5”。逐一输入字段选择对应的类型,修改字段的大小。 步骤2:单击“保存”按钮,保存输入“tTeaeher”表名。单击+确定”按钮,关闭设计视图。

第2题:

有以下程序includeusing namespace std;class MyClass{public:MyClass(int n){number

有以下程序 #include<iostream> using namespace std; class MyClass { public: MyClass(int n){number =n; } //拷贝构造函数 MyClass(MyClass& other) {number=other.number;} ~MyClass() {} private: int number; }; MyClass fun(MyClass p) { MyClass temp(p); return temp; } int main() { MyClass Obj1(10),obj2(0); MyClass obj3(obj1); obj2=fun(obj3); return 0; } 程序执行时,MyClass类的拷贝构造函数被调用的次数是

A.5

B.4

C.3

D.2


正确答案:B
解析:本题考核C++的拷贝构造函数。调用拷贝构造函数的情况为:一个新对象被另一个已存在的同类型对象初始化;当一个对象作为实参传递给函数时为初始化形参,要调用拷贝构造函数。在函数值返回时形参的生命期结束时它的析构函数被调用;在函数返回一个对象时调用拷贝构造函数。符合以上条件的有:用对象obj1来初始化obj3;obj3作为实参被传入;函数fun返回一个对象时;系统用返回值初始化一个匿名对象时调用了拷贝构造函数。总共调用4次。

第3题:

有以下程序include using namespace std;class MyClass{public: MyClass(int n) { nu

有以下程序 #include <iostream> using namespace std; class MyClass { public: MyClass(int n) { number=n; } // 拷贝构造函数 MyClass(MyClass& other) {number=other. number;} -MyClass() {} private: int number; }; MyClass fun(MyClass p) { MyClass temp(p); return temp; } int main() { MyClass obj1(10), obj2(0); MyClass obj3(obj 1); obj2=fun(obj3); return 0; } 程序执行时,MyClass 类的拷贝构造函数被调用的次数是______ 次。

A.5

B.4

C.3

D.2


正确答案:B
解析:对象初始化和复制时,都要拷贝构造函数。所以程序执行一共调用了4次构造函数

第4题:

有以下程序include using namespace std;class MyClass{public:MyClass(int n) { num

有以下程序#include <iostream>using namespace std;class MyClass{public: MyClass(int n) { number=n; } //拷贝的构造函数 MyClass(MyClass& other) {number=other. number; } ~MyClass() { }private: int number;};MyClass fun(MyClass p){ MyClass temp(p); return temp;}int main() MyClass obj 1 (10), obj 2(0); MyClass obi 3 (obj 1); obj2=fun(obj3); return 0;}程序执行时,MyClass 类的拷贝构造函数被调用的次数是( )。

A.5

B.4

C.3

D.2


正确答案:B

第5题:

有以下程序: #include<iostream> usingnamespaeestd; classMyClass { public: MyClass(intn){number=n;} //拷贝构造函数 MyClass(MyClass&other){number=other.number;} ~MyClass(){} private: intnumber; }; MyClassfun(MyClassp) { MyClasstemp(p); returntemp; } intmain() { MyCIassobj1(10),obj2(O); MyClassobj3(obj1); obj2=fun(obj3); return0; 程序执行时,MyClass类的拷贝构造函数被调用的次数是( )。

A.5

B.4

C.3

D.2


正确答案:B
B。【解析】调用拷贝构造函数的情况为:一个新对象被另一个已存在的同类型对象初始化;当一个对象作为实参传递给函数时为初始化形参,要调用拷贝构造函数。在函数值返回时形参的生命期结束时它的析构函数被调用;在函数返回一个对象时调用拷贝构造函数。符合以上条件的有:用对象objl来初始化obj3;obj3作为实参被传入;函数fun返回一个对象时;系统用返回值初始化一个匿名对象时调用了拷贝构造函数。总共调用4次。

第6题:

已知类MyClass的定义如下: ClassMyClass{ public: MyClass(intd){data=d;} ~MyClass(){} private: intdata; }; 下列对MyClass类对象数组的定义和初始化语句中,正确的是( )。

A.MyClassarray[2];

B.MyClassarray[2]={MyClass(5)};

C.MyClassarray[2]={MyClass(5),Myclass(6)};

D.MyClass*array=newMyClass[2];


正确答案:C
C。【解析】A只是声明,没有初始化;B的初始化错误,另一个数组对象没有指明地址;D同样做的不是初始化的事情。

第7题:

有以下程序:includeusing namespace std;class MyClass{public:MyClass(int n){numbe

有以下程序: #include<iostream> using namespace std; class MyClass { public: MyClass(int n){number=n;} //拷贝构造函数 MyClass(MyClass&other) {number=other.number;} ~MyClass() {} private: int number; }; MyClass fun(MyClass p)

A.5

B.4

C.3

D.2


正确答案:B
解析: 调用拷贝构造函数的情况为:一个新对象被另一个已存在的同类型对象初始化,当一个对象作为实参传遵给函数时为初始化形参,要调用拷贝构造函数。在函数值返回时形参的生命期结束时它的析构函数被调用,在函数返回一个对象时调用拷贝构造函数。符合以上条件的有:用对象obj1来初始化obj3;obj3作为实参被传入,函数fun返回一个对象时,系统用返回值初始化一个匿名对象时调用了拷贝构造函数。总共调用4次。

第8题:

有如下的类模板定义: templateclassMyClass{TYPE n; public:MyClass(TYPE k);… };

有如下的类模板定义:

template<typenameTYPE>

classMyClass{

TYPE n;

public:

MyClass(TYPE k);

};

其中构造函数MyClass用的值初始化数据成员n。因此在模板类体外,构造函数MyClass应定义______。


正确答案:templatetypename TYPE> TyClassTYPE>::MyClass(TYPE k):n(k){}
templatetypename TYPE> TyClassTYPE>::MyClass(TYPE k):n(k){}

第9题:

有以下程序 include using namespace std; class MyClass { public:

有以下程序 #include<iostream> using namespace std; class MyClass { public: MyClass(intn) {number=n;} //拷贝构造函数 MyClass (MyClass& other) {number=other.number;} ~MyClass(){} private: int number; }; MyClass fun (MyClass p) { MyClass temp(p); return temp; } intmain() { MyClass obj1(10),obj2(0); MyClass obj3(obj1); obj2=fun(obj3); return0; } 程序执行时,MyClass类的拷贝构造函数被调用的次数是

A.5

B.4

C.3

D.2


正确答案:B
解析:本题考核C++的拷贝构造函数。调用拷贝构造函数的情况为:一个新对象被另一个已存在的同类型对象初始化:当一个对象作为实参传递给函数时为初始化形参,要调用拷贝构造函数。在函数值返回时形参的生命期结束时它的结构函数被调用;在函数返回一个对象时调用拷贝构造函数。符合以上条件的有:用对象。obj1来初始化。obj3;obj3作为实参被传入;函数fun返回一个对象时;系统用返回值初始化一个匿名对象时调用了拷贝构造函数。总共调用4次。