首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请使用VC6或使用【答题】菜单打开考生目录proj3下的工程文件proj3,此工程中包含一个源程序文件proj3.cpp,其功能是从文本文件in.dat中读取全部整数,将整数序列存放到intAn’ay类的对象中,然后建立另一对象myArray,将对象内容赋
请使用VC6或使用【答题】菜单打开考生目录proj3下的工程文件proj3,此工程中包含一个源程序文件proj3.cpp,其功能是从文本文件in.dat中读取全部整数,将整数序列存放到intAn’ay类的对象中,然后建立另一对象myArray,将对象内容赋
admin
2019-06-05
45
问题
请使用VC6或使用【答题】菜单打开考生目录proj3下的工程文件proj3,此工程中包含一个源程序文件proj3.cpp,其功能是从文本文件in.dat中读取全部整数,将整数序列存放到intAn’ay类的对象中,然后建立另一对象myArray,将对象内容赋值给myArray。类intArray重载了“=”运算符。程序中给出了一个测试数据文件input,不超过300个的整数。程序的输出是:
10
11
13
16
20
要求:
补充编制的内容写在“//*********333*********”与“//*********666*********”之间。实现重载赋值运算符函数,并将赋值结果在屏幕输出。格式不限。不得修改程序的其他部分。
注意:程序最后将结果输出到文件out.dat中。输出函数writeToFile已经编译为obj文件,并且在本程序中调用。
//intArray.h
class intArray
{
private:
int*array;
int length;
public:
intArray(char*filename);
intArray();
intArray&operator=(const intAr。
ray&src);
一intArray();
void show();
};
void writeTOFile(const char*path);
//main.cpp
#include
#include
#include
#include“intArray.h”
using namespace std;
intArray::intArray()
{
length=10;
array=new int[1ength];
}
intArray::intArray(char*filename)
{
ifstream myFile(filename);
array=new int[300];
length=0;
while(myFile>>array[1ength++])
length_____;
myFile.close();
}
intArray& intArray:: operator =
(const intArray&src)
{
if(array!=NULL)delete[]array;
length=src.1ength;
array=new int[1ength];
//*********333*********
//*********666*********
return*this;
}
intArray::一intArray()
{
delete[]array;
}
void intArray::show()
{
int step=0;
for(int i=0;i
{
cout<
<
step++;
}
}
void main()
{t
intArray*arrayP=new intArray
(“input.dat”);
intArray myArray;
myArray=*arrayP;
(*arrayP).show();
delete arrayP;
writeToFile(””);
}
选项
答案
for(int i=0;i
解析
本题主要考查intAtray类,其中涉及动态数组、构造函数、运算符重载、析构函数及其他成员函数。
【解题思路】
主要考查考生对运算符重载的掌握,该函数要重载运算符“=”,该运算符的意思是赋值。先看该函数的其他语句:
if(array!=NULL)delete[]array;
length=src.1ength;
array=new int[1ength];
第一条语句是把原来动态数组释放,第二条语句是把形参$1rc的成员length赋值给变量length,第三条语句是给指针array分配内存。接下来要把动态数组中的值逐个赋给array数组,在这里使用for循环语句,循环变量i的范围是0~length,并进行赋值操作。
转载请注明原文地址:https://kaotiyun.com/show/S18p777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
下面不属于C++的预定义的流对象是()。A)cinB)iostreamC)clogD)Celt
假定TestClass为一个类,则该类的拷贝构造函数的声明语句为()。A)TestClass(TestClassx)B)TestClass&(TestClassx)C)TestClass(TestClass*x)D)TestC
有如下程序:#include<iostream>usingnamespacestd;classTestClass{staticinti;public:TestClass(){i++;
在公有派生时,派生类中定义的成员函数只能访问原基类的()。A)私有成员、保护成员和公有成员B)保护成员和私有成员C)公有成员和保护成员D)公有成员和私有成员
下列的方法中,不属于软件调试技术的是()。A)强行排错法B)集成测试法C)回溯法D)原因排除法
在下面程序的横线处填上适当的语句,使程序执行后的输出结果为ABCD。#include<iostream>usingnamespacestd;classA{public:A(){cout<<’A’;}
A、 B、 C、 D、 A要对线性表进行二分法查找,对线性表有两个要求:第一,要求线性表是按顺序方式存储的;第二,要求线性表中的元素是按照从小到大的顺序排好序。
为了提高函数调用的实际运行速度,可以将较简单的函数定义为()。A)内联函数B)重载函数C)递归函数D)函数模板
有如下两个类声明classAA{public:intm;};classBB:protectedAA{intn;};在类BB中,数据成员m的访问属性是_____,数据成员n
随机试题
首选血液透析的是哪种毒物中毒
A、梅毒B、淋病C、尖锐湿疣D、艾滋病E、肝炎球菌引起的是
下列关于建设工程项目管理任务的论述中,正确的是()
在单代号网络计划中,设H工作的紧后工作有I和J,总时差分别为5天和4天,H、I工作之间的间隔时间为7天,H、J工作之间的间隔时间为6天,则H工作的总时差为()天。
以下不属于期货合约主要条款的是()。
()是中国共产党根本的政治路线和组织路线,是党的一切工作和一切组织必须坚持和贯彻的根本路线。
国家资本主义,就是在国家直接控制和支配下的资本主义经济。这种新式国家资本主义经济是带有很大的()
释放表单时,最后引发的事件是______。
有如下程序#includemain(){inti,array[5]={3,5,10,4};for(i=0;i
Likefinefood,goodwritingissomethingweapproachwithpleasureandenjoyfromthefirsttastetothelast.Andgoodwriters
最新回复
(
0
)