首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请使用菜单命令或直接用VC6打开考生文件夹下的工程proj2,实现一个自定义的字符串类MyString,重载取下标操作符([ ]),使类的对象能够通过下标取字符串的某位元素。如果下标越界,则返回第一个元素的值。 请在程序中//**********
请使用菜单命令或直接用VC6打开考生文件夹下的工程proj2,实现一个自定义的字符串类MyString,重载取下标操作符([ ]),使类的对象能够通过下标取字符串的某位元素。如果下标越界,则返回第一个元素的值。 请在程序中//**********
admin
2016-09-20
42
问题
请使用菜单命令或直接用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全国计算机二级
相关试题推荐
以下方法不属于结构化分析方法的是()。
若a=12,b=14,c=0,则表达式“((y=(a>B)?a:B)>C)?y:c”的值为【】。
若有如下程序:#include<iostream>usingnamespacestd;ints=0;classsample{staticintn;public:sam
有如下程序:#include<iostream>usingnamespacestd;intb=3;intfun(int*k){intb=2;b=*(k++)*b;
下列关于类的访问权限的描述中,()是错误的。
利用ER模型进行数据库的概念设计,可以分成3步:首先设计局部ER模型,然后把各个局部ER模型综合成一个全局的模型,最后对全局ER模型进行()。
以下内容属于存储在计算机内有结构的数据集合的是()。
以下类定义中可能会引起错误的语句是classA{public:~A(){}//1inti;//2private:
当要使用ostrstream流类定义一个流对象并联系一个字符串时,应在文件开始处使用#include命令,使之包含()文件。
随机试题
男性,26岁,发热,咳嗽,胸痛,查体可闻及胸膜摩擦音,该摩擦音的特点是
关于心脏摄影的叙述,错误的是
参苓白术散中除人参、茯苓、白术、甘草和桔梗外,尚有
对上前牙邻面接触点的描述,正确的是()
属于涩剂的方剂是属于轻剂的方剂是
发电厂、变电站电气装置中,应采取专门敷设接地线的电气设施是()。
地籍图上一类界址点间距允许误差不得超过()cm。
从银行外汇交易的角度,银行有买入价、卖出价和中间价,如果某国银行间外汇交易市场上外汇买入价高于卖出价,则说明该国采用的汇率标价方法是()。
青少年期心理卫生工作重点在于自我意识的建立和社会化问题。()
[2010年]设A为四阶实对称矩阵,且A2+A=0,若A的秩为3,则A相似于().
最新回复
(
0
)