Указатель на QString
От: a1ien.n3t  
Дата: 29.05.11 15:28
Оценка:
Нужно соотнести большое количество членов класса текстовым именам. Использую вот такую конструкцию.
QMap<QString,void*> vars;

Собственно заполняем в конструкторе.
 vars.insert("name",(void*)&this->name);
 vars.insert("extraCellsCount",(void*)&this->extraCellsCount);

При этом
в самом классе
    QString name;
    int extraCellsCount;

В инт записать не проблема, а вот как в QString в таком случае данные писать??
Re: Указатель на QString
От: CannyMan  
Дата: 30.05.11 02:27
Оценка:
Здравствуйте, a1ien.n3t, Вы писали:

AN>Нужно соотнести большое количество членов класса текстовым именам. Использую вот такую конструкцию.

AN>
AN>QMap<QString,void*> vars;
AN>

AN>Собственно заполняем в конструкторе.
AN>
AN> vars.insert("name",(void*)&this->name);
AN> vars.insert("extraCellsCount",(void*)&this->extraCellsCount);
AN>

AN>При этом
AN>в самом классе
AN>
AN>    QString name;
AN>    int extraCellsCount;
AN>

AN>В инт записать не проблема, а вот как в QString в таком случае данные писать??

Вопрос такой — а нахрена void* ? Не лучше ли QVariant?
Re[2]: Указатель на QString
От: DanQuimby  
Дата: 04.06.11 11:39
Оценка:
Здравствуйте, CannyMan, Вы писали:

CM>Здравствуйте, a1ien.n3t, Вы писали:


AN>>Нужно соотнести большое количество членов класса текстовым именам. Использую вот такую конструкцию.

AN>>
AN>>QMap<QString,void*> vars;
AN>>

AN>>Собственно заполняем в конструкторе.
AN>>
AN>> vars.insert("name",(void*)&this->name);
AN>> vars.insert("extraCellsCount",(void*)&this->extraCellsCount);
AN>>

AN>>При этом
AN>>в самом классе
AN>>
AN>>    QString name;
AN>>    int extraCellsCount;
AN>>

AN>>В инт записать не проблема, а вот как в QString в таком случае данные писать??

CM>Вопрос такой — а нахрена void* ? Не лучше ли QVariant?

если пропустить ... что действительно нафига void


 QString x = "free";
 QString y = "dom";

 x.append(y);
Re: Указатель на QString
От: amd00 Россия  
Дата: 24.06.11 08:20
Оценка:
Здравствуйте, a1ien.n3t, Вы писали:

AN>Нужно соотнести большое количество членов класса текстовым именам. Использую вот такую конструкцию.

AN>
AN>QMap<QString,void*> vars;
AN>

AN>Собственно заполняем в конструкторе.
AN>
AN> vars.insert("name",(void*)&this->name);
AN> vars.insert("extraCellsCount",(void*)&this->extraCellsCount);
AN>

AN>При этом
AN>в самом классе
AN>
AN>    QString name;
AN>    int extraCellsCount;
AN>

AN>В инт записать не проблема, а вот как в QString в таком случае данные писать??
Для доступа к членам класса по их текстовым именам можно использовать механизм задания свойств с помощью макроса Q_PROPERY.
Re: Указатель на QString
От: amd00 Россия  
Дата: 24.06.11 08:21
Оценка:
Здравствуйте, a1ien.n3t, Вы писали:

AN>Нужно соотнести большое количество членов класса текстовым именам. Использую вот такую конструкцию.

AN>
AN>QMap<QString,void*> vars;
AN>

AN>Собственно заполняем в конструкторе.
AN>
AN> vars.insert("name",(void*)&this->name);
AN> vars.insert("extraCellsCount",(void*)&this->extraCellsCount);
AN>

AN>При этом
AN>в самом классе
AN>
AN>    QString name;
AN>    int extraCellsCount;
AN>

AN>В инт записать не проблема, а вот как в QString в таком случае данные писать??

Для доступа к членам класса по их текстовым именам можно использовать механизм задания свойств с помощью макроса Q_PROPERY.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.