急求c++程序设计题答案!!! 30
急求c++程序设计题答案!!!编写一个词汇类Words,其中有一个字符数组成员用来保存一个英文单词,试以成员函数形式重载下标运算符[],用于访问词汇类的每个字母。...
急求c++程序设计题答案!!!编写一个词汇类Words,其中有一个字符数组成员用来 保存一个英文单词,试以成员函数形式重载下标 运算符 [ ],用于访问词汇类的每个字母。
展开
1个回答
展开全部
#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;
}
#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;
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询