急求c++程序设计题答案!!! 30

急求c++程序设计题答案!!!编写一个词汇类Words,其中有一个字符数组成员用来保存一个英文单词,试以成员函数形式重载下标运算符[],用于访问词汇类的每个字母。... 急求c++程序设计题答案!!!编写一个词汇类Words,其中有一个字符数组成员用来 保存一个英文单词,试以成员函数形式重载下标 运算符 [ ],用于访问词汇类的每个字母。 展开
 我来答
microroom
科技发烧友

2018-06-25 · 智能家居/数码/手机/智能家电产品都懂点
知道大有可为答主
回答量:7118
采纳率:83%
帮助的人:1640万
展开全部
#include<iostream>
#include<cstring>

using namespace std;

class Words
{
public:
Words(const char *w)
{
len=strlen(w);
word=new char[len+1];
strcpy(word,w);
}
~Words()
{
delete word;
}
int length() const
{
return len;
}
char& operator [](int i)
{
if(i>=0 && i<len)
return *(word+i);
}
const char& operator [](int i) const
{
if(i>=0 && i<len)
return *(word+i);
}
private:
int len;
char *word;
};

int main()
{
string word;

cout<<"请输入一个英文单词:";
cin>>word;
Words w1(word.c_str());
const Words w2(word.c_str());
for(int i=0;i<w1.length();i++)
cout<<w1[i];
cout<<endl;
w1[0]='S';
for(int i=0;i<w1.length();i++)
cout<<w1[i];
cout<<endl;
for(int i=0;i<w2.length();i++)
cout<<w2[i];
cout<<endl;
//w2[0]='S';
//for(int i=0;i<w2.length();i++)
// cout<<w2[i];
//cout<<endl;
return 0;
}
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式