位置誤差的在下面留言表示。請幫助解決這個問題。左括號「(」在「Foo.cpp中」發現不正確匹配
#include<iostream.h>
#include<string.h>
#include<stdlib.h>
class String
{
private:
enum{sz=80};
char str[sz];
public:
String()
{
strcpy(str,"");
}
String (char s[])
{
strcpy(str,s);
}
void display() const
{
cout<<str;
}
String operator +(String ss) const
{
String temp;
if(strlen(str) + (strlen(ss.str) < sz)
{
strcpy(temp.str,str);
strcat(temp.str , ss.str);
} // Error is reported here!
else
{
cout<<"\nstring overflow";
exit(1);
}
return temp;
}
};
int main()
{
String s1="\nMerry christmas";
String s2="happy new year";
String s3;
s1.display();
s2.display();
s3.display();
s3=s1+s2;
s3.display();
cout<<endl;
return 0;
}
你用什麼來編輯你的源代碼?一位優秀的編輯通常會將你的視覺指向正確的方向。 – darioo 2010-12-20 13:10:29
你知道標準庫'string'類,對吧? – jalf 2010-12-20 14:06:10