设计C ++方法,接受从QtScript传递的可变数字参数

时间:2010-11-12 17:58:22

标签: c++ qt qtscript

我正在学习QtScript并写了几个简单的例子。如果我将参数限制为简单类型,则映射很简单。

我现在希望能够将可变数量的参数从QtScript传递到C ++类,例如

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

如何在C ++工具中声明方法?

1 个答案:

答案 0 :(得分:1)

快速搜索建议您使用QVariantList

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

我现在没有工具来测试它。