请问这里的“s1.s”是什么意思?(关于运算符重载)
请问这里的“s1.s”是什么意思?(关于运算符重载)
内容:
#include "iostream.h"
#include "string.h"
#include "stdio.h"
class Str
{
private:
char *s;
int len;
public:
Str()
{ }
Str(char *s1)
{
len=strlen(s1);
s=new char[len];
strcpy(s,s1);
}
void print()
{
cout<<s<<endl;
}
Str operator + (Str s1)
{
return(strcat(s,s1.s)); //请问这里的“s1.s”是什么意思?为什么加“.”
}
};
void main()
{
char str1[100],str2[100];
gets(str1);gets(str2);
Str s1(str1),s2(str2),s3;
s3=s1+s2;
s3.print();
}
请问这里的“s1.s”是什么意思?为什么加“.” 我快要考级了,还望各高手给予帮助。
参考答案:s1.s
表示s1对象的s成员变量
s1是Str类,该类有个s成员变量