首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请使用菜单命令或直接用VC6打开考生文件夹下的工程proj2,实现一个自定义的字符串类MyString,重载取下标操作符([ ]),使类的对象能够通过下标取字符串的某位元素。如果下标越界,则返回第一个元素的值。 请在程序中//**********
请使用菜单命令或直接用VC6打开考生文件夹下的工程proj2,实现一个自定义的字符串类MyString,重载取下标操作符([ ]),使类的对象能够通过下标取字符串的某位元素。如果下标越界,则返回第一个元素的值。 请在程序中//**********
admin
2016-09-20
78
问题
请使用菜单命令或直接用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;intmain(){inta[]={1,4,5};int*p=&a[0],x=6,y,z;
下列关于swith语句的描述中,正确的是()。
常用的关系运算是关系代数和()。
若有以下程序:#include<iostream>usingnamespacestd;classBase{private:inta,b;public:Base(intx
Jackson结构化程序设计方法是英国的M.Jackson提出的,它是一种面向【】的设计方法。
以下函数调用语句中含有参数的个数是excc((v1,v2),(v2,v3,V4),v6);
下面关于对象概念的描述中,()是错误的。
算法分析的目的是
为解决在多重继承环境中因公共基类带来的【】问题,C++语言提供了虚基类机制。
软件设计模块化的目的是【】。
随机试题
公告和通告是面向公众宣布重要事项的公文,其作用具有()
A.发生于胸膜 B.多属周围型 C.多属中央型 D.多属弥漫浸润型 E.由支气管黏膜上皮的嗜银细胞发生肺鳞状细胞癌
石灰土应湿养,养护期不宜少于( )。
下列有关商品期货套期业务的报表列示的说法,不正确的是()。
某个五位数加上20万并且3倍以后,其结果正好与该五位数的右端增加一个数字2的得数相等,这个五位数是()。
下列各项中属于行政许可行为的是()。
兴趣:索然无味
裁缝:剪刀
下列哪些行为构成非国家工作人员受贿罪?()
A、Givethemabloodtest.B、Givethemamedicalcheckup.C、Keepthemawakeaslongaspossible.D、Findouttheirreasonforinso
最新回复
(
0
)