Перегрузка оператора =
У меня есть класс для работы со строками. Назовем его, например, MyString. Хочется, чтобы можно было одну строку приравнять к другой при помощи оператора =. Как это можно сделать?
MyString operator = (const MyString &str){
...
}
В нем и проводи присваивание.
MyString& operator = (const MyString &str){
...
}
Большое спасибо!
Только вот еще один вопрос: а что, собственно, должна функция возвращать? Или это все равно?
// MyString.h
class MyString{
public:
const MyString &operator=(const MyString&);
..
private:
MyString data();
// MyString.cpp
const &MyString::operator=(const MyString &strRef)
{
data = strRef.data;
return *this;
}
MyString& operator = (const MyString &str){
...
}[/QUOTE]
Ага, согласен. ))
[QUOTE=SDRAM DIMM]Только вот еще один вопрос: а что, собственно, должна функция возвращать? Или это все равно?[/QUOTE]
Ну раз присваиваешь в какойто объект вот и возвращай его.