首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请使用菜单命令或直接用VC6打开考生文件夹下的工程proj2,实现一个自定义的字符串类MyString,重载取下标操作符([ ]),使类的对象能够通过下标取字符串的某位元素。如果下标越界,则返回第一个元素的值。 请在程序中//**********
请使用菜单命令或直接用VC6打开考生文件夹下的工程proj2,实现一个自定义的字符串类MyString,重载取下标操作符([ ]),使类的对象能够通过下标取字符串的某位元素。如果下标越界,则返回第一个元素的值。 请在程序中//**********
admin
2016-09-20
52
问题
请使用菜单命令或直接用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
解析
(1)主要考查构造函数的中成员变量的赋值、动态内存的分配和字符串长度函数的使用,成员变量str是字符串指针,赋值时使用new[]分配内存空间,为了存放字符串尾部的空字符,需要分配的容量为字符串str长度+1,另外使用strlen获取str的长度。
(2)主要考查考生对析构函数定义的掌握和动态内存的释放,MyString类的成员str是在构造函数中使用new[]分配的,所以在析构函数中需要使用delete[]释放。
(3)主要考查考生对字符串库函数调用的掌握,使用strlen获取str的长度,判断下标i是否越界。
(4)如果下标i越界,根据题意返回第一个元素str[0]。
转载请注明原文地址:https://kaotiyun.com/show/GdNp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
需求分析阶段最后提供的文档是软件的()。
有如下程序:#include<iostream>usingnamespacestd;classAA{public:virtualvoidf(){cout<
已知序列{17,18,60,40,7,32,73,65,85},采用冒泡排序法对该序列作降序排序时,第4趟的结果是【】。
下列叙述中,正确的是()。
将代数式z=转换成程序设计中的表达式为【】。
设有以下程序段:inta[5]={0},*p,*q;p=a;q=a;则下列选项中,合法的运算是()。
设有关系R及关系S,它们分别有p、q个元组,则关系R与S经笛卡儿积后所得新关系的元组个数是()。
【】是一种信息隐蔽技术,目的在于将对象的使用者和对象的设计者分开。
执行语句序列charstrl[10]="ABCD",str2[10]="XYZxyz";for(inti=0;strl[i]=str2[i];i++)后,数组str1中的字符是XYZxyz,数组str2中的字符串是【 】。
mystrlen函数的功能是计算str所指字符串的长度,并作为函数值返回,请填空。intmystrlen(char*str){inti;for(i=0;_______!=’\0’;i++);return(i);}
随机试题
将病人随机分成试验组和对照组,分别给予药物和安慰剂或参照处理,然后评价药物效果的流行病学的研究方法是
IAaskedhimBwherehe’dlikeCtoDgoto.
时间速度积分的单位是
如果使用审计抽样实施控制测试没有为得出有关测试总体的结论提供合理的基础,下列有关注册会计师采取的措施中,错误的是()。
阅读下面材料,回答问题。“苦难是人生的一笔财富。”这是人们常说的一句激励、奋进的话,但学会正确对待苦难更有现实的意义,毕竟,苦难不是幸事,也不是每个人都能承受得起的。在一次聚会上,那些堪称成功的实业家、明星谈笑风生,其中就有著名的汽车商约
计算机辅助教学中的教学模式是()的有机结合,是为完成现代教学与学习任务采用的相对稳定的,用以设计、组织、实施、评估、优化教学与学校的策略方法和结构的简化形式。
1/2
Writeanessaybasedonthefollowingchart.Youshoulddescribethechartandgiveyourcomments.Youshouldwriteabout15
•Readthearticlebelowabouteducationalbackgroundofsuccessfulmanagers.•Choosethebestwordtofilleachgap,fromA,B
Asmytrainwasnotduetoleaveforanotherhour,Ihadplentyoftimetospare.Afterbuyingsome【B1】______toreadonthejou
最新回复
(
0
)