我有这个 Word.cc,它类似于用于操作单词的字符串类。我将运算符 << 重载为友元函数,但是当我不断收到此“Word a() 的地址将评估为真”时。你能评论我可能错的地方吗?我在 main 中使用的代码如下。
int main()
{
Word a();
cout<<a;
return 0;
}
Word::Word()
{
init("");
}
void Word::init(char *c,char *stoppers)
{
char *temp="\0";
if(c==NULL)
c=temp;
size=strlen(c)==0 ? DEFAULT_SIZE :(strlen(c)+1+DEFAULT_SIZE)/DEFAULT_SIZE*DEFAULT_SIZE;
wd=new char[size+1];
delimiters=new char[strlen(stoppers)+1];
strcpy(wd,c);
strcpy(delimiters,stoppers);
count=strlen(wd);
}
ostream & operator<<(ostream &out,const Word &b)
{
out<<b.wd;
return out;
}