Can you implement lazy array access in QtScript?
Is it possible to implement a QObject for use in QtScript which overloads [] to implemen开发者_JS百科t lazy array population?
I want to implement something like this:
var bar = foo["bar"];
and have the value be lazily calculated in C++ code. Is this possible?
Yes. bar
will be available as a property in the QScriptValue object which represents foo
.
If you want the calculation to happen automatically, you possibly have to subclass QScriptClass
and re-implement the property()
accessor function.
Have you tried to implement operator[] in the QObject that you expose to QtScript? Easier to answer if you also include some code.
精彩评论