8 / 8 / 0
Регистрация: 08.01.2013
Сообщений: 85
1

Преобразование объекта в строку

16.06.2014, 21:24. Показов 2896. Ответов 4
Метки нет (Все метки)

Есть некий класс Object.
Как сделать так, чтобы он был полностью совместим со string?

Чтобы можно было делать например вот так:
C++
1
2
3
4
5
6
7
8
Object object;
object + "obj";
object + "ect";
cout << object << endl;
 
string one = "one";
string two = one + " + " + object; // Тут выдает ошибку. Результат сочетания должен быть "one + object".
cout << two << endl;
Мой вариант класса Object:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
class Object {
private:
    string data = "";
public:
 
    friend std::ostream& operator<<(std::ostream &strm, const Object &object) {
        return strm << object.data;
    }
 
    void operator+(string s) {
        data += s;
    }
 
    operator string () {
        return data;
    }
};
__________________
Помощь в написании контрольных, курсовых и дипломных работ, диссертаций здесь
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
16.06.2014, 21:24
Ответы с готовыми решениями:

Преобразование COm Объекта в строку
Искал, не нащёл. Как преобразовать ком объект в строку!? Строка() не помогает.

Преобразование объекта в байты
в ActionScript есть тип ByteArray, то есть массив байтов и в него можно добавлять объекты var...

Преобразование типов для объекта
Доброго времени суток. Хотелось бы услышать ответ на вопрос о преобразовании типов для объектов. ...

Преобразование объекта типа Expression
Подскажите, как объект типа Expression&lt;Func&lt;First, bool&gt;&gt; expression преобразовать к типу...

4
433 / 368 / 149
Регистрация: 06.08.2012
Сообщений: 961
16.06.2014, 21:37 2
Лучший ответ Сообщение было отмечено QGuest как решение

Решение

Цитата Сообщение от QGuest Посмотреть сообщение
// Тут выдает ошибку. Результат сочетания должен быть "one + object"
C++
1
2
3
4
friend string operator+(string s, Object obj)
{
    return s + obj.data;
}
1
8 / 8 / 0
Регистрация: 08.01.2013
Сообщений: 85
16.06.2014, 21:41  [ТС] 3
Issues, спасибо Работает.
0
2753 / 1908 / 568
Регистрация: 05.06.2014
Сообщений: 5,559
17.06.2014, 00:15 4
Как сделать так, чтобы он был полностью совместим со string?
C++
1
class Object:public std::string...
Но мы не ищем легких путей.
0
8 / 8 / 0
Регистрация: 08.01.2013
Сообщений: 85
17.06.2014, 00:19  [ТС] 5
Renji, я помню про наследование
Может я пример не очень удачный навел. Но я хотел создать совместимость обекта со string так, как это работает на Java. То есть, не хранить строку, а выводить данные про обьект в виде строки.
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
17.06.2014, 00:19
Помогаю со студенческими работами здесь

Преобразование строки в имя объекта
помогите плиз вот с таким вопросом: у меня есть следующая часть кода: Dim x as integer = 1 Dim...

Преобразование из строки в поле агрегатного объекта
Вот такой вопрос возник - можно ли из списка значений вытягивать выборочные реквизиты агрегатного...

Word: преобразование графического объекта в нужный символ
Чисто теоретически возможно ли написать такой макрос, который распознавал бы формулу в виде...

Преобразование в числовой формат значений объекта Range
Подскажите,пож-ста,как преобразовать в числовой формат значения ячеек в объекте Range? То есть мне...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2022, CyberForum.ru