Question
问题是,我正试图使用插入操作员获取用户输入, 并初始化值 thecharps
, 将大小分配给需要输入长度的字符i, 我如何获得? 以及插入操作员中的初始化 。
主要问题是插入操作员的问题。
当我运行程序时 它会显示分割断层断层
plz 帮助帮助
class string1
{
private:
int len;
char *thechars;
//friend ostream& operator<<(ostream&,string1&);##
//friend istream& operator>>(istream&,string1&);##
public:
//string1() :len(0),thechars(NULL){}
string1()
{
thechars = new char[1];
thechars[0] = ;
len=0;
// cout << " Default string constructor
";
// ConstructorCount++;
}
};
// this is the insertion operator i use
istream& operator>>(istream& in, string1& tpr)
{
in >> tpr.thechars;
//tpr.thechars[i+1]= ;
return in;
}
//this one is the extraction operator
ostream& operator<<(ostream& out,string1& prt)
{
for(int i=0;i<prt.len;i++)
out<<prt.thechars[i];
return out;
}
// main function##
string1 str;
cout << "enter first string" << endl;
cin >> str;
cout << str << endl;