mr_esmaily
پنج شنبه 23 تیر 1384, 19:56 عصر
سلام
چرا در کد زیر تابع دوست اجازه دسترسی به اعضای خصوصی همچنین عضو ثابت MAX را ندارد ؟
class xString
{
private :
static const int MAX=25;
char str[MAX];
public :
xString(){}
xString (char Str[])
{
if(strlen(Str) < MAX)
strcpy(str,Str);
else
{
cout << "Error : Overflow" << endl;
strcpy(str,"");
}
}
void DisPlay()
{
if(strcmp(str,""))
cout << str << endl;
else
cout << "Error : xString Is NULL." << endl;
}
friend xString operator + (char [],char []) ;
};
xString operator + (char Str1[],char Str2[])
{
xString temp;
if(strlen(Str1) + strlen(Str2) < MAX)
{
strcpy(temp.str,"");
strcat(temp.str,Str1);
strcat(temp.str,Str2);
}
else
cout << "Error : Overflow" << endl;
return temp;
}
چرا در کد زیر تابع دوست اجازه دسترسی به اعضای خصوصی همچنین عضو ثابت MAX را ندارد ؟
class xString
{
private :
static const int MAX=25;
char str[MAX];
public :
xString(){}
xString (char Str[])
{
if(strlen(Str) < MAX)
strcpy(str,Str);
else
{
cout << "Error : Overflow" << endl;
strcpy(str,"");
}
}
void DisPlay()
{
if(strcmp(str,""))
cout << str << endl;
else
cout << "Error : xString Is NULL." << endl;
}
friend xString operator + (char [],char []) ;
};
xString operator + (char Str1[],char Str2[])
{
xString temp;
if(strlen(Str1) + strlen(Str2) < MAX)
{
strcpy(temp.str,"");
strcat(temp.str,Str1);
strcat(temp.str,Str2);
}
else
cout << "Error : Overflow" << endl;
return temp;
}