Russian Qt Forum

Qt => Model-View (MV) => Тема начата: DiamondRain от Декабрь 12, 2010, 16:31



Название: Как правильно записать QList<QMap<QString, double>> ?
Отправлено: DiamondRain от Декабрь 12, 2010, 16:31
На такую запись препроцессор ругается.

И как записать такую структуру в виде константных значений?


Название: Re: Как правильно записать QList<QMap<QString, double>> ?
Отправлено: BRE от Декабрь 12, 2010, 16:48
На такую запись препроцессор ругается.

Код
C++ (Qt)
QList<QMap<QString, double> > lalala;
 

И как записать такую структуру в виде константных значений?
Не соображу про константные значения.


Название: Re: Как правильно записать QList<QMap<QString, double>> ?
Отправлено: DiamondRain от Декабрь 12, 2010, 16:52
На такую запись препроцессор ругается.

Код
C++ (Qt)
QList<QMap<QString, double> > lalala;
 

И как записать такую структуру в виде константных значений?
Не соображу про константные значения.


У меня есть табличка 10х4 целых значений. Они изменяться не будут. Так вот я хочу объявить их, используя вышеописанную структуру.


Название: Re: Как правильно записать QList<QMap<QString, double>> ?
Отправлено: BRE от Декабрь 12, 2010, 17:05
У меня есть табличка 10х4 целых значений. Они изменяться не будут. Так вот я хочу объявить их, используя вышеописанную структуру.
Так целых или не целых?  :)

Можно просто его закрыть, заполнять в конструкторе и возвращать на него константную ссылку:
Код
C++ (Qt)
class MyClass
{
typedef QList<QMap<QString, double> > MyList;
public:
const MyList &list() const { return m_list; }
 
private:
MyList m_list;
};
 


Название: Re: Как правильно записать QList<QMap<QString, double>> ?
Отправлено: DiamondRain от Декабрь 12, 2010, 17:14
Сорри, вещественных :) Ясно. Значит заполнение коллекции через QList::append() в конструкторе делать? Хотел что-то вроде:

myCollection = [
{'hash1': 'value1'},
{'hash2': 'value2'},
...
{'hashN': 'valueN'}
];


Название: Re: Как правильно записать QList<QMap<QString, double>> ?
Отправлено: BRE от Декабрь 12, 2010, 17:28
Хотел что-то вроде:
Так может и сделать все проще:
Код
C++ (Qt)
const double collect[][4] = { { 10, 20, 30, 40 }, { 50, 60, 70, 80 }, ... };
 


Название: Re: Как правильно записать QList<QMap<QString, double>> ?
Отправлено: DiamondRain от Декабрь 12, 2010, 17:36
Ну в принципе, как вариант :)
Хотелось сделать красиво - обращение по текстовому ключу :) Но и так, я подумал, сойдет. Спасибо за ответы!