Название: Динамическое создание имени переменной Отправлено: SerjVarshavskiy от Ноября 04, 2007, 13:57 День добрый.
например в perl есть возможность получить данные переменной, имя которой находится в другой переменной (string) perl: $testVar = "YES!\n"; $strVarName = "testVar"; print "$$strVarName"; # YES! подскажите, как подобное реализовать в Qt/C++ ? Название: Re: Динамическое создание имени переменной Отправлено: Вячеслав от Ноября 04, 2007, 14:19 perl - интерпритатор, C++ компилятор - в общем случае ;) Разницу знаем ?
В самом общем случае - ответ будет -"никак" ;) Если переменные наследники QObject'a то смотрим в сторону objectName проперти ;) Название: Re: Динамическое создание имени переменной Отправлено: ритт от Ноября 04, 2007, 14:33 а поинтеры на хрена были придуманы?
Название: Re: Динамическое создание имени переменной Отправлено: SerjVarshavskiy от Ноября 04, 2007, 14:35 затем, что бы на вопрос написать какой-нибудь ответ КОДОМ
Название: Re: Динамическое создание имени переменной Отправлено: pastor от Ноября 04, 2007, 14:36 Можно попробывать через Dynamic Properties. Помоему так будет дёшево и сердито ;)
Название: Re: Динамическое создание имени переменной Отправлено: SerjVarshavskiy от Ноября 04, 2007, 14:40 perl - интерпритатор, C++ компилятор - в общем случае ;) Разницу знаем ? В самом общем случае - ответ будет -"никак" ;) Если переменные наследники QObject'a то смотрим в сторону objectName проперти ;) о, башое пасиб, чет сразу не сообразил про эту возможность с objectName Название: Re: Динамическое создание имени переменной Отправлено: SerjVarshavskiy от Ноября 04, 2007, 14:49 Можно попробывать через Dynamic Properties. Помоему так будет дёшево и сердито ;) если можно подробнее (если это не QObject.ObectName) новенький я в Qt :-[ Название: Re: Динамическое создание имени переменной Отправлено: pastor от Ноября 04, 2007, 14:56 если можно подробнее (если это не QObject.ObectName) Это QObject::setProperty(...), QObject::property() Цитировать In addition to properties defined using Q_PROPERTY in a class it is possible to dynamically add and remove properties to any QObject at run-time. If setProperty is called with a property not statically defined using Q_PROPERTY it is automatically added as dynamic property and its value is stored in the object. The value can be queried using the property() method, just like with static properties. Название: Re: Динамическое создание имени переменной Отправлено: Вячеслав от Ноября 04, 2007, 15:06 а поинтеры на хрена были придуманы? А для динамики они не катят - если ты не знаешь че ему присваивать - имя перемменой строиться в динамике - то ой :( А вообще IMHO это изврат - если такое потребовалось - ищем ошибку в проектировании проги ;)Название: Re: Динамическое создание имени переменной Отправлено: Tam-Tam от Ноября 05, 2007, 02:34 Нечто похожее есть в С++. Qt тут ни при чем.
Название: Re: Динамическое создание имени переменной Отправлено: vaprele07 от Ноября 05, 2007, 04:31 посмотри QMap, QHash
QMap<QString, QString> tags; tags["testVar"] = "YES!\n"; strVarName = tags["testVar"]; Название: Re: Динамическое создание имени переменной Отправлено: Tam-Tam от Ноября 05, 2007, 13:09 Может поможет...
#define concat(a, b) a ## b int xy = 1; printf("%d", concat(x, y)); Хотя врядли - динамически так не получится. Название: Re: Динамическое создание имени переменной Отправлено: Racheengel от Ноября 06, 2007, 01:43 Вообще непонятно, нафига такое понадобилось?
|