Разработка метода C ++, который принимает аргументы с переменным числом, переданные из QtScript - PullRequest
0 голосов
/ 12 ноября 2010

Я изучаю QtScript и написал несколько тривиальных примеров. Отображение будет простым, если я ограничу аргументы простыми типами.

Теперь я хочу иметь возможность передавать переменное число аргументов из QtScript в класс C ++, например

Myobject.add(1, 2, 3, "4444");
Myobject.add( {first:1, second:2, third:333} );

Как объявить метод в C ++ реализации?

1 Ответ

1 голос
/ 12 ноября 2010

Быстрый поиск предполагает, что вы используете QVariantList:

void Myobject::add(QVariantList& l)
{
    for( QVariantList::const_iterator i(l.begin()); i != l.end(); ++i ) {
        QVariant elem(*i);
        if( elem.canConvert<QVariantMap>() ) {
            // ...
        }
    }
}

У меня нет инструментов для проверки этого сейчас.

...