crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )

> сохранение контейнера объектов в файл
__ilya__
  опции профиля:
сообщение 21.8.2012, 11:25
Сообщение #1


Студент
*

Группа: Участник
Сообщений: 57
Регистрация: 19.1.2012
Пользователь №: 3143

Спасибо сказали: 0 раз(а)




Репутация:   0  


есть некий класс или даже структура в которой есть несколько полей QStrinq, int, double
class Data
{
public:
    QString s1, s2, s3;
    int i1, i2, i3;
    double d1, d2, d3;
};

в другом классе будет контейнер таких объектов
class Widget:public QWidget
{
    Q_OBJECT
    
    QVector<Data>data;
};

я не привел конструктор и методы добавления, удаления объектов, для этого специальные слоты будут.

Собственно вопрос -как мне сохранить содержимое всего контейнера, из этих объектов в файл?
Да и из файла считывать, тоже надо

Сообщение отредактировал __ilya__ - 21.8.2012, 11:32
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
 
Начать новую тему
Ответов
ssoft
  опции профиля:
сообщение 22.8.2012, 8:42
Сообщение #2


Участник
**

Группа: Участник
Сообщений: 130
Регистрация: 17.2.2010
Из: Москва
Пользователь №: 1470

Спасибо сказали: 30 раз(а)




Репутация:   3  


Цитата(__ilya__ @ 21.8.2012, 17:41) *
может я ошибаюсь, но по моему так перегружаются только дружественные ф-ции.


Ошибаешься
Если члены класса имеют видимость public, то можно не указывать friend отношения.
Собственно, operator >>, << - это такие же обычные глобальные методы (функции), как и все остальные.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Sokoloff
  опции профиля:
сообщение 23.8.2012, 12:21
Сообщение #3


Участник
**

Группа: Участник
Сообщений: 237
Регистрация: 1.4.2009
Из: Москва
Пользователь №: 654

Спасибо сказали: 50 раз(а)




Репутация:   11  


Цитата(ssoft @ 22.8.2012, 9:42) *
Если члены класса имеют видимость public,

И часто такое бывает?
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

Сообщений в этой теме


Быстрый ответОтветить в данную темуНачать новую тему
Теги
Нет тегов для показа


2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0




RSS Текстовая версия Сейчас: 29.11.2024, 8:05