Mam za zadanie stworzyć do obecnej klasy operator + dzięki któremu będę mógł łączyć ciągi znaków ze sobą. Ale przy wywołaniu operatora wyskakuje błąd.
.h
class String
{
char *str;
int len;
...
public:
...
String operator+(const String &c) const;
};
.cpp
String String::operator+(const String &c) const
{
String sum;
sum.str=new char[len+c.len+1];
strcpy(sum.str, str);
strcat(sum.str, c.str);
return sum;
}
main
...
s2=s2 + s1; // błąd to undefined reference to String::operator+()
...
s1,s2 i s3 to obiekty klasy String
Operator przypisania też jest, był gotowy w klasie Ale błąd wyskoczył w +. Źle to zaimplentowalem?