首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请使用菜单命令或直接用VC6打开考生文件夹下的工程proj2,实现一个自定义的字符串类MyString,重载取下标操作符([]),使类的对象能够通过下标取字符串的某位元素。如果下标越界,则返回第一个元素的值。 请在程序中//**********found*
请使用菜单命令或直接用VC6打开考生文件夹下的工程proj2,实现一个自定义的字符串类MyString,重载取下标操作符([]),使类的对象能够通过下标取字符串的某位元素。如果下标越界,则返回第一个元素的值。 请在程序中//**********found*
admin
2016-06-12
72
问题
请使用菜单命令或直接用VC6打开考生文件夹下的工程proj2,实现一个自定义的字符串类MyString,重载取下标操作符([]),使类的对象能够通过下标取字符串的某位元素。如果下标越界,则返回第一个元素的值。
请在程序中//**********found**********之下一行的横线处填写适当的代码,并删除横线,使程序完整、正确。
输出结果为:
S
t
#include
#include
using namespace std;
class MyString
{
private:
char*str;
public:
MyString(char*s)
{
//**********found**********
str。new——;
strcpy(str,s);
)
一MyString()
{
//**********found**********
_________;
}
char&operator[](int i);
};
char&MyString::operator[](int i)
{
//**********found**********
if(_________:;
return str
;
//**********found**********
return__________;
}
int main()
{
MyString test(“test string”),
cout<
cout<
return 0;
}:
选项
答案
(1)char[strlen(s)+1] (2)delete[]str (3)i
解析
本题考查MyString类,涉及构造函数、析构函数、动态内存的分配与释放、字符串长度函数。
【解题思路】
(1)主要考查构造函数中成员变量的赋值、动态内存的分配和字符串长度函数的使用,成员变量str是字符串指针,赋值时使用new[]分配内存空间,为了存放字符串尾部的空字符,需要分配的容量为字符串str长度+1,另外使用strlen获取str的长度。
(2)主要考查考生对析构函数定义的掌握和动态内存的释放,MyString类的成员str是在构造函数中使用new[]分配的,所以在析构函数中需要使用delete[]释放。
(3)主要考查考生对字符串库函数调用的掌握,使用strlen获取str的长度,判断下标i是否越界。
(4)如果下标i越界,根据题意返回第一个元素8tr[0]。
转载请注明原文地址:https://kaotiyun.com/show/RiNp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
下面叙述不正确的是
有以下程序:#include<iostream>#include<fstream>usingnamespacestd;intmain(){ofstreamofile("D:\\test.tx
数据管理技术的发展是与计算机技术及其应用的发展联系在一起的,经历了由低级到高级的发展过程。分布式数据库、面向对象数据库等新型数据库是属于()。
若有以下程序:#include<iostream>usingnamespacestd;template<classT>Tmin(Tx,Ty){if(x<y)retur
面向对象程序设计支持的3大特性为:封装性、继承性和【】。
为使该程序执行结果为10,那么应该在程序划线处填入的语句是()。#include<iostream>usingnamespacestd;classMyClass{public:MyClas
若有以下程序:#include<iostream>usingnamespacestd;classBase{intx;protected:inty;public:
源程序中应包含一些内部文档,以帮助阅读和理解源程序,源程序的内部文档通常包括选择合适的标识符、注解和()。
下列叙述中,正确的是()。
下列C++标点符号中表示一条预处理命令开始的是()。
随机试题
某一方法经反复测定所得出的结果很接近于真值,可用下列哪一名称表示
A.胃黏膜相关组织淋巴瘤B.鼻腔NK/T细胞淋巴瘤C.Burkitt淋巴瘤D.蕈样霉菌病E.弥漫大B细胞淋巴瘤可以不用放化疗就能治愈的淋巴瘤是
慢性支气管炎临床特点为
与完成呼吸功能关系密切的是
在福费廷业务中,银行买断票据,必须放弃对出口商所贴现款项的追索权。()(2012年上半年)
在党风廉政建设责任制中,对于组织处理类的责任追究最重的处理方式是免职。()
“安慰剂效应”是指让病人在不知情的情况下服用完全没有药效的假药,却能得到与真药相同甚至更好效果的现象。“安慰剂效应”得到了很多临床研究的支持。对这种现象的一种解释是:人对于未来的期待会改变大脑的生理状态,进而引起全身的生理变化。以下陈述都能支持上述解释,除
甲有个人财产30万元,死后未立遗嘱,甲的妻子乙和甲的哥哥丙仍在世。甲还有一女儿,15年前与丁结婚后不久即去世,未留有子女,丁在其妻子死后对甲乙仍然尽了主要赡养义务,问该遗产该如何继承?
这是表演艺术家李默然第一次演电影,相比起在话剧舞台上的__________,突然站在镜头前.李默然称“根本不会动了”。对比话剧舞台和电影艺术,李默然总结道,一个是需要__________,一个是需要收缩。填入划横线部分最恰当的一项是:
下列程序段的运行结果是()。#include<stdio.h>voidmain(){charstr[]="ABC",*p=str;printf("%d\n",*(
最新回复
(
0
)